public function testWithSlashAtTheEnd()
 {
     $entityManager = $this->getMock('Doctrine\\Common\\Persistence\\ManagerRegistry', array(), array(), '', false);
     $manager = new PageManager('Foo\\Bar', $entityManager, array());
     $homepage = new Page();
     $homepage->setUrl('/');
     $homepage->setName('homepage');
     $bundle = new Page();
     $bundle->setUrl('/bundles/');
     $bundle->setName('Bundles');
     $child = new Page();
     $child->setName('foobar');
     $bundle->addChildren($child);
     $homepage->addChildren($bundle);
     $manager->fixUrl($child);
     $this->assertEquals('/bundles/foobar', $child->getUrl());
 }
 public function testFixUrl()
 {
     $manager = new PageManager($this->getMock('Doctrine\\ORM\\EntityManager', array(), array(), '', false));
     $page1 = new Page();
     $page1->setName('Salut comment ca va ?');
     $page2 = new Page();
     $page2->setName('Super! et toi ?');
     $page1->addChildren($page2);
     $manager->fixUrl($page1);
     $this->assertEquals($page1->getSlug(), 'salut-comment-ca-va');
     $this->assertEquals($page1->getUrl(), '/salut-comment-ca-va');
     $parent = new Page();
     $parent->setRouteName('homepage');
     $parent->addChildren($page1);
     $manager->fixUrl($parent);
     $this->assertEquals($parent->getSlug(), null);
     // homepage is a specific route name
     $this->assertEquals($parent->getUrl(), '/');
     $this->assertEquals($page1->getSlug(), 'salut-comment-ca-va');
     $this->assertEquals($page1->getUrl(), '/salut-comment-ca-va');
     $this->assertEquals($page2->getSlug(), 'super-et-toi');
     $this->assertEquals($page2->getUrl(), '/salut-comment-ca-va/super-et-toi');
 }
Example #3
0
 public function testPageTypeError()
 {
     $page = new Page();
     $page->setName('global');
     $page->setRouteName('_page_internal_error_global');
     $this->assertFalse($page->isCms(), 'isCms');
     $this->assertFalse($page->isDynamic(), 'isDynamic');
     $this->assertFalse($page->isHybrid(), 'isHybrid');
     $this->assertTrue($page->isInternal(), 'isInternal');
     $this->assertTrue($page->isError(), 'isError');
 }
Example #4
0
 public function testParents()
 {
     $root = new Page();
     $root->setName('root');
     $level1 = new Page();
     $level1->setName('level 1');
     $level2 = new Page();
     $level2->setName('level 2');
     $page = new Page();
     $page->setName('page');
     $level1->setParent($root);
     $level2->setParent($level1);
     $page->setParent($level2);
     $parent = $page->getParent();
     $this->assertEquals('level 2', $parent->getName());
     $parent = $page->getParent(0);
     $this->assertEquals('root', $parent->getName());
     $parent = $page->getParent(1);
     $this->assertEquals('level 1', $parent->getName());
 }