Exemplo n.º 1
0
 public function testLifecycleCallbacks()
 {
     $category = new Category();
     $category->setName('Default category')->setSlug('default')->setEnabled(true);
     $child = clone $category;
     $child->setSlug('child');
     $category->addChild($child);
     $child->setParent($category);
     $kernel = static::getKernel();
     /** @var EntityManager $em */
     $em = $kernel->getContainer()->get('doctrine')->getManager();
     $em->persist($category);
     $em->persist($child);
     $em->flush();
     $this->assertEquals(array($child), $category->getChildren()->toArray());
     /** @var Category $category */
     $category = $em->getRepository(get_class($category))->findOneBy(array('id' => $category->getId()));
     $this->assertNotNull($category);
     if (null !== $category) {
         $em->remove($category);
         $em->flush();
     }
     $category = $em->getRepository(get_class($category))->findOneBy(array('id' => $category->getId()));
     $this->assertNull($category);
     $this->assertNull($child->getParent());
 }