Пример #1
0
 public function testUrlForWithDefaultsAndQualified()
 {
     $utils = $this->utils;
     $m = $this->mapper;
     $m->connect('home', '', array('controller' => 'blog', 'action' => 'splash'));
     $m->connect('category_home', 'category/:section', array('controller' => 'blog', 'action' => 'view', 'section' => 'home'));
     $m->connect(':controller/:action/:id');
     $m->createRegs(array('content', 'blog', 'admin/comments'));
     $environ = array('SCRIPT_NAME' => '', 'SERVER_NAME' => 'www.example.com', 'SERVER_PORT' => '80', 'PATH_INFO' => '/blog/view/4');
     Horde_Routes_TestHelper::updateMapper($m, $environ);
     $this->assertNull($utils->urlFor());
     $this->assertNull($utils->urlFor(array('controller' => 'post')));
     $this->assertNull($utils->urlFor(array('id' => 2)));
     $this->assertNull($utils->urlFor(array('qualified' => true, 'controller' => 'blog', 'id' => 4)));
     $this->assertEquals('http://www.example.com/blog/view/4', $utils->urlFor(array('qualified' => true, 'controller' => 'blog', 'action' => 'view', 'id' => 4)));
     $this->assertEquals('/viewpost/4', $utils->urlFor(array('controller' => 'post', 'action' => 'view', 'id' => 4)));
     $environ = array('SCRIPT_NAME' => '', 'HTTP_HOST' => 'www.example.com:8080', 'PATH_INFO' => '/blog/view/4');
     Horde_Routes_TestHelper::updateMapper($m, $environ);
     $this->assertNull($utils->urlFor(array('controller' => 'post')));
     $this->assertEquals('http://www.example.com:8080/blog/view/4', $utils->urlFor(array('qualified' => true, 'controller' => 'blog', 'action' => 'view', 'id' => 4)));
 }
Пример #2
0
 public function testStaticRoute()
 {
     $m = $this->mapper;
     $utils = $m->utils;
     $utils->mapperDict = array();
     $environ = array('SCRIPT_NAME' => '', 'HTTP_HOST' => 'example.com');
     Horde_Routes_TestHelper::updateMapper($m, $environ);
     $m->connect(':controller/:action/:id');
     $m->connect('home', 'http://www.groovie.org/', array('_static' => true));
     $m->connect('space', '/nasa/images', array('_static' => true));
     $m->createRegs(array('content', 'blog'));
     $this->assertEquals('http://www.groovie.org/', $utils->urlFor('home'));
     $this->assertEquals('http://www.groovie.org/?s=stars', $utils->urlFor('home', array('s' => 'stars')));
     $this->assertEquals('/content/view', $utils->urlFor(array('controller' => 'content', 'action' => 'view')));
     $this->assertEquals('/nasa/images?search=all', $utils->urlFor('space', array('search' => 'all')));
 }