Beispiel #1
0
 public function testAddRouteBasic()
 {
     Route::reset();
     $router = new Router($this->getDi());
     $routes = ['home' => ['route' => '/', 'definitions' => ['controller' => 'index', 'action' => 'index', 'module' => 'Application', 'namespace' => 'Application\\Controller']], 'controller' => ['route' => '/:controller', 'definitions' => ['controller' => 1, 'action' => 'index', 'module' => 'Application', 'namespace' => 'Application\\Controller']], 'controller/action' => ['route' => '/:controller/:action', 'definitions' => ['controller' => 1, 'action' => 2, 'module' => 'Application', 'namespace' => 'Application\\Controller']]];
     foreach ($routes as $name => $route) {
         $router->addRoute($name, $route);
     }
     unset($name, $route);
     $paths = ['/' => ['route_name' => 'home', 'controller' => 'index', 'action' => 'index'], '/index' => ['route_name' => 'controller', 'controller' => 'index', 'action' => 'index'], '/application/test' => ['route_name' => 'controller/action', 'controller' => 'application', 'action' => 'test'], '/application/test/' => ['route_name' => 'controller/action', 'controller' => 'application', 'action' => 'test']];
     foreach ($paths as $path => $opt) {
         $router->handle($path);
         $this->assertTrue($router->wasMatched());
         $this->assertEquals($opt['controller'], $router->getControllerName());
         $this->assertEquals($opt['action'], $router->getActionName());
         $this->assertEquals($opt['route_name'], $router->getMatchedRoute()->getName());
     }
 }