/** * Tests that parameters can be passed into the route for use by the template * using the options parameter of a Route */ public function testRouteOptionParameters() { $params = array('home' => '/', 'suckit' => 'andsee'); // Create a route and routecollection $route0 = new Route('/', array('controller' => 'TestController'), array(), array('parameters' => $params)); $routes = new RouteCollection(); $routes->add('route0', $route0); // Our test request $request = WebRequest::create('/', 'GET', array('name' => 'Chris Noden')); $request->overrideGlobals(); $obj = new WebRouter($request); // Pass our route collection to our WebRouter object $obj->setRouteCollection($routes); // Match the request to the route $obj->match(); $controller = $obj->getController(); $this->assertEquals('TestController', $controller->getClassName()); $this->assertEquals($params, $controller->getParameters()); }
public function testInternalSynergyRoute() { // This GET request should fail $request = WebRequest::create(SYNERGY_WEBTEST_BASEURL . '/_synergy_/css/bootstrap.min.css', 'GET'); $request->overrideGlobals(); $this->hasOutput(); $obj = new WebProject($request); $obj->setDeliverResponse(false); $obj->run(); $response = $obj->getResponse(); $this->assertInstanceOf('Synergy\\Project\\Web\\WebAsset', $response); $filename = $response->getFilename(); $filename = str_replace(dirname(SYNERGY_ROOT_DIR), '', $filename); $this->assertSame('/View/_synergy_/css/bootstrap.min.css', $filename); }