Exemplo n.º 1
0
 public function testRemoval()
 {
     $category = new Category();
     $category->setName('Default category')->setSlug('default')->setEnabled(true);
     $child = new Category();
     $child->setName('Child category')->setSlug('child')->setEnabled(true)->setParent($category);
     $category->addChild($child);
     $kernel = static::getKernel();
     /** @var EntityManager $em */
     $em = $kernel->getContainer()->get('doctrine')->getManager();
     $em->persist($category);
     $em->persist($child);
     $em->flush();
     $category = $em->getRepository(get_class($category))->find($category->getId());
     $children = $category->getChildren();
     $first = $children[0];
     $this->assertEquals($child->getId(), $first->getId());
     $category->removeChild($child);
     $child->setParent(null);
     $em->remove($category);
     $em->flush();
     $child = $em->getRepository(get_class($child))->find($child->getId());
     $this->assertNull($child->getParent());
 }