Example #1
0
 public function testDispatcherShouldRunRouteWithoutInvocingController()
 {
     $routes = new \Nano\Routes();
     $route = new TestRunnableRouteAbstract();
     $routes->addRoute('get', $route);
     $_SERVER['REQUEST_METHOD'] = 'get';
     self::assertFalse($route->wasRun());
     self::assertNull($this->application->dispatcher->dispatch($routes, TestRunnableRouteAbstract::LOCATION));
     self::assertTrue($route->wasRun());
 }
Example #2
0
 public function testModuleRoutes()
 {
     $this->application->withConfigurationFormat('php')->withModule('test', $this->files->get($this, '/test'))->configure();
     $routes = new \Nano\Routes();
     $route = \Nano\Route\Common::create('some', 'class1', 'index', 'test');
     $dispatcher = $this->application->dispatcher;
     $response = new \Nano\Controller\Response\Test($this->application);
     $dispatcher->setResponse($response);
     $routes->addRoute('get', $route);
     self::assertNotNull($dispatcher->getRoute($routes, '/some'));
     self::assertEquals($route->controller(), $dispatcher->getRoute($routes, '/some')->controller());
     self::assertEquals($route->action(), $dispatcher->getRoute($routes, '/some')->action());
     self::assertInstanceOf('Module\\Test\\Controller\\Class1', $dispatcher->getController($route));
     $dispatcher->dispatch($routes, '/some');
     self::assertTrue(class_exists('Module\\Test\\Controller\\Class1', false));
     self::assertEquals(Module\Test\Controller\Class1::name(), $response->getBody());
 }