function AccessAwareRouterTest::testCheckAccessResultWithReason

Same name and namespace in other branches
  1. 9 core/tests/Drupal/Tests/Core/Routing/AccessAwareRouterTest.php \Drupal\Tests\Core\Routing\AccessAwareRouterTest::testCheckAccessResultWithReason()
  2. 8.9.x core/tests/Drupal/Tests/Core/Routing/AccessAwareRouterTest.php \Drupal\Tests\Core\Routing\AccessAwareRouterTest::testCheckAccessResultWithReason()
  3. 10 core/tests/Drupal/Tests/Core/Routing/AccessAwareRouterTest.php \Drupal\Tests\Core\Routing\AccessAwareRouterTest::testCheckAccessResultWithReason()

Tests the matchRequest() function for access denied with reason message.

File

core/tests/Drupal/Tests/Core/Routing/AccessAwareRouterTest.php, line 115

Class

AccessAwareRouterTest
@coversDefaultClass <a href="/api/drupal/core%21lib%21Drupal%21Core%21Routing%21AccessAwareRouter.php/class/AccessAwareRouter/11.x" title="A router class for Drupal with access check and upcasting." class="local">\Drupal\Core\Routing\AccessAwareRouter</a> @group Routing

Namespace

Drupal\Tests\Core\Routing

Code

public function testCheckAccessResultWithReason() : void {
    $this->setupRouter();
    $request = new Request();
    $reason = $this->getRandomGenerator()
        ->string();
    $access_result = AccessResult::forbidden($reason);
    $this->accessManager
        ->expects($this->once())
        ->method('checkRequest')
        ->with($request)
        ->willReturn($access_result);
    $this->expectException(AccessDeniedHttpException::class);
    $this->expectExceptionMessage($reason);
    $this->accessAwareRouter
        ->matchRequest($request);
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.