public function testUniqueLeaf() { $root = new TreeSlug(); $root->setTitle('root'); $foo1 = new TreeSlug(); $foo1->setTitle('Foo'); $foo1->setParent($root); $foo2 = new TreeSlug(); $foo2->setTitle('Foo'); $foo2->setParent($root); $this->em->persist($root); $this->em->persist($foo1); $this->em->persist($foo2); $this->em->flush(); $this->assertEquals('root/foo', $foo1->getSlug()); $this->assertEquals('root/foo-1', $foo2->getSlug()); }
private function populate() { $repo = $this->em->getRepository(self::TARGET); $food = new TreeSlug(); $food->setTitle('Food'); $fruits = new TreeSlug(); $fruits->setTitle('Fruits'); $vegitables = new TreeSlug(); $vegitables->setTitle('Vegitables'); $milk = new TreeSlug(); $milk->setTitle('Milk'); $meat = new TreeSlug(); $meat->setTitle('Meat'); $oranges = new TreeSlug(); $oranges->setTitle('Oranges'); $citrons = new TreeSlug(); $citrons->setTitle('Citrons'); $repo->persistAsFirstChild($food)->persistAsFirstChildOf($fruits, $food)->persistAsFirstChildOf($vegitables, $food)->persistAsLastChildOf($milk, $food)->persistAsLastChildOf($meat, $food)->persistAsFirstChildOf($oranges, $fruits)->persistAsFirstChildOf($citrons, $fruits); $this->em->flush(); }
private function populate() { $repo = $this->em->getRepository(self::TARGET); $food = new TreeSlug(); $food->setTitle('Food'); $fruits = new TreeSlug(); $fruits->setTitle('Fruits'); $vegitables = new TreeSlug(); $vegitables->setTitle('Vegitables'); $milk = new TreeSlug(); $milk->setTitle('Milk'); $meat = new TreeSlug(); $meat->setTitle('Meat'); $oranges = new TreeSlug(); $oranges->setTitle('Oranges'); $citrons = new TreeSlug(); $citrons->setTitle('Citrons'); $apple = new TreeSlug(); $apple->setTitle('Apple'); $kiwi = new TreeSlug(); $kiwi->setTitle('Kiwi'); $banana = new TreeSlug(); $banana->setTitle('Banana'); $repo->persistAsFirstChild($food)->persistAsFirstChildOf($fruits, $food)->persistAsFirstChildOf($vegitables, $food)->persistAsLastChildOf($milk, $food)->persistAsLastChildOf($meat, $food)->persistAsFirstChildOf($oranges, $fruits)->persistAsFirstChildOf($citrons, $fruits)->persistAsFirstChildOf($apple, $fruits)->persistAsPrevSiblingOf($kiwi, $apple)->persistAsNextSiblingOf($banana, $apple); $this->em->flush(); }