You are here

public function UrlGeneratorTraitTest::testRedirect in Zircon Profile 8

Same name and namespace in other branches
  1. 8.0 core/tests/Drupal/Tests/Core/Routing/UrlGeneratorTraitTest.php \Drupal\Tests\Core\Routing\UrlGeneratorTraitTest::testRedirect()

@covers ::redirect

File

core/tests/Drupal/Tests/Core/Routing/UrlGeneratorTraitTest.php, line 37
Contains \Drupal\Tests\Core\Routing\UrlGeneratorTraitTest.

Class

UrlGeneratorTraitTest
@coversDefaultClass \Drupal\Core\Routing\UrlGeneratorTrait @group Routing

Namespace

Drupal\Tests\Core\Routing

Code

public function testRedirect() {
  $route_name = 'some_route_name';
  $generated_url = 'some/generated/url';
  $url_generator = $this
    ->getMock('Drupal\\Core\\Routing\\UrlGeneratorInterface');
  $url_generator
    ->expects($this
    ->once())
    ->method('generateFromRoute')
    ->with($route_name, [], [
    'absolute' => TRUE,
  ])
    ->willReturn($generated_url);
  $url_generator_trait_object = $this
    ->getMockForTrait('Drupal\\Core\\Routing\\UrlGeneratorTrait');
  $url_generator_trait_object
    ->setUrlGenerator($url_generator);
  $url_generator_method = new \ReflectionMethod($url_generator_trait_object, 'redirect');
  $url_generator_method
    ->setAccessible(TRUE);
  $result = $url_generator_method
    ->invoke($url_generator_trait_object, $route_name);
  $this
    ->assertInstanceOf('Symfony\\Component\\HttpFoundation\\RedirectResponse', $result);
  $this
    ->assertSame($generated_url, $result
    ->getTargetUrl());
}