コード例 #1
0
ファイル: RouterTest.php プロジェクト: jcs/halfmoon
 public function testSetupRoutes()
 {
     HalfMoon\Router::clearRoutes();
     $this->assertEquals(0, count(HalfMoon\Router::getRoutes()));
     $this->assertEquals(0, count(HalfMoon\Router::getRootRoutes()));
     $added_routes = 0;
     $added_root_routes = 0;
     HalfMoon\Router::addRoute(array("url" => "logout", "controller" => "login", "action" => "logout2", "conditions" => array("hostname" => "/^www(\\d+)\\.example\\.(com|net)\$/i")));
     $added_routes++;
     HalfMoon\Router::addRoute(array("url" => "logout", "controller" => "login", "action" => "logout"));
     $added_routes++;
     HalfMoon\Router::addRoute(array("url" => "*globby", "controller" => "login", "action" => "globtest", "conditions" => array("globby" => "/^globte.t\$/")));
     $added_routes++;
     HalfMoon\Router::addRoute(array("url" => "stub/:controller/:action/:id", "action" => "stub_:action"));
     $added_routes++;
     HalfMoon\Router::addRoute(array("url" => "zero_test/:id", "controller" => "zero_test", "action" => "show", "conditions" => array("id" => "/^[0-9]+\$/")));
     $added_routes++;
     HalfMoon\Router::addRoute(array("url" => ":tag/:message", "controller" => "messages", "action" => "show_tagged", "conditions" => array("tag" => "/^[A-Za-z0-9_\\-]+\$/", "message" => "/^\\d+\$/")));
     $added_routes++;
     HalfMoon\Router::addRoute(array("url" => ":controller/:action/*globbed", "conditions" => array("controller" => "someglob", "action" => "/^[a-z]+\$/")));
     $added_routes++;
     HalfMoon\Router::addRootRoute(array("controller" => "root2", "conditions" => array("hostname" => "www.example2.com")));
     $added_root_routes++;
     HalfMoon\Router::addRootRoute(array("controller" => "root"));
     $added_root_routes++;
     $this->assertEquals($added_routes, count(HalfMoon\Router::getRoutes()));
     $this->assertEquals($added_root_routes, count(HalfMoon\Router::getRootRoutes()));
 }