public function testDefaultRoute() { $this->router->setNamespace('\\Vendor\\Application'); $this->router->setRoute(['module' => 'base']); $this->router->addRoute('/', []); $route = $this->router->getRoute(new Request()); $routeExpected = ['namespace' => '\\Vendor\\Application', 'module' => 'base', 'controller' => 'index', 'action' => 'index', 'parameters' => [], 'methods' => null]; $this->assertEquals($routeExpected, $route); }
/** * @param string $name service identifier * @param \Janeiro\Di\Container $container */ public function register($name, Container $container) { $container->set($name, function () use($container, $name) { $service = new Router(); $service->setNamespace($container['registry']->get('routing.namespace')); $service->setRoute(['module' => $container['registry']->get('routing.default.module'), 'controller' => $container['registry']->get('routing.default.controller'), 'action' => $container['registry']->get('routing.default.action')]); foreach ($container['registry']->get('routing.table') as $route) { foreach ($route as $pattern => $configuration) { $service->addRoute($pattern, $configuration); } } return $service; }); }