public function testExternalPermanentRedirect()
 {
     self::setupBeforeClass();
     $externalRoute = new ExternalRoute();
     $externalRoute->setPermanent();
     $externalRoute->setUri('http://www.twitter.com/');
     self::$em->persist($externalRoute);
     self::$em->flush();
     $route = new Route();
     $route->setResolver(self::$resolver);
     $route->setName('my_redirect_to_external_2');
     $route->setPath('/path/to/external/route2');
     $route->setController('raindrop_routing.generic_controller:redirectRouteAction');
     $route->setContent($externalRoute);
     self::$em->persist($route);
     self::$em->flush();
     $request = new RequestStub();
     $request->param = 'my_route';
     $request->query = new FakeClass();
     $request->query->all = array();
     self::$kernel->getContainer()->set('request', $request);
     $response = self::$controller->redirectRouteAction($externalRoute);
     $this->assertSame(301, $response->getStatusCode());
     $this->assertInstanceOf('Symfony\\Component\\HttpFoundation\\RedirectResponse', $response);
     $this->assertSame('http://www.twitter.com/', $response->getTargetUrl());
 }
 /**
  * @expectedException Symfony\Component\Routing\Exception\InvalidParameterException
  */
 public function testSetInvalidContentArray()
 {
     $content = new RecordStub();
     $route = new Route();
     $route->setResolver(self::$resolver);
     $route->setContent(array($content));
 }