public function testEmptyPath() { $container = $this->getMock('Symfony\\Component\\DependencyInjection\\ContainerInterface'); $controller = new RedirectController(); $controller->setContainer($container); $returnResponse = $controller->urlRedirectAction(''); $this->assertInstanceOf('\\Symfony\\Component\\HttpFoundation\\Response', $returnResponse); $this->assertEquals(410, $returnResponse->getStatusCode()); }
/** * @dataProvider provider */ public function testRoute($permanent, $expectedCode) { $request = new Request(); $route = 'new-route'; $url = '/redirect-url'; $params = array('additional-parameter' => 'value'); $request->attributes = new ParameterBag(array('route' => $route, '_route' => 'current-route', 'permanent' => $permanent) + $params); $router = $this->getMock('Symfony\\Component\\Routing\\RouterInterface'); $router->expects($this->once())->method('generate')->with($this->equalTo($route), $this->equalTo($params))->will($this->returnValue($url)); $container = $this->getMock('Symfony\\Component\\DependencyInjection\\ContainerInterface'); $container->expects($this->at(0))->method('get')->with($this->equalTo('request'))->will($this->returnValue($request)); $container->expects($this->at(1))->method('get')->with($this->equalTo('router'))->will($this->returnValue($router)); $controller = new RedirectController(); $controller->setContainer($container); $returnResponse = $controller->redirectAction($route, $permanent); $this->assertInstanceOf('\\Symfony\\Component\\HttpFoundation\\Response', $returnResponse); $this->assertTrue($returnResponse->isRedirect($url)); $this->assertEquals($expectedCode, $returnResponse->getStatusCode()); }
private function createRedirectController($httpPort = null, $httpsPort = null) { $container = $this->getMock('Symfony\\Component\\DependencyInjection\\ContainerInterface'); if (null !== $httpPort) { $container->expects($this->once())->method('hasParameter')->with($this->equalTo('request_listener.http_port'))->will($this->returnValue(true)); $container->expects($this->once())->method('getParameter')->with($this->equalTo('request_listener.http_port'))->will($this->returnValue($httpPort)); } if (null !== $httpsPort) { $container->expects($this->once())->method('hasParameter')->with($this->equalTo('request_listener.https_port'))->will($this->returnValue(true)); $container->expects($this->once())->method('getParameter')->with($this->equalTo('request_listener.https_port'))->will($this->returnValue($httpsPort)); } $controller = new RedirectController(); $controller->setContainer($container); return $controller; }