You are here

public function CustomPageExceptionHtmlSubscriberTest::testHandleWithGetRequest in Zircon Profile 8

Same name and namespace in other branches
  1. 8.0 core/tests/Drupal/Tests/Core/EventSubscriber/CustomPageExceptionHtmlSubscriberTest.php \Drupal\Tests\Core\EventSubscriber\CustomPageExceptionHtmlSubscriberTest::testHandleWithGetRequest()

Tests onHandleException with a GET request.

File

core/tests/Drupal/Tests/Core/EventSubscriber/CustomPageExceptionHtmlSubscriberTest.php, line 135
Contains \Drupal\Tests\Core\EventSubscriber\CustomPageExceptionHtmlSubscriberTest.

Class

CustomPageExceptionHtmlSubscriberTest
@coversDefaultClass \Drupal\Core\EventSubscriber\CustomPageExceptionHtmlSubscriber @group EventSubscriber

Namespace

Drupal\Tests\Core\EventSubscriber

Code

public function testHandleWithGetRequest() {
  $this
    ->setupStubAliasManager();
  $request = Request::create('/test', 'GET', array(
    'name' => 'druplicon',
    'pass' => '12345',
  ));
  $this->kernel
    ->expects($this
    ->once())
    ->method('handle')
    ->will($this
    ->returnCallback(function (Request $request) {
    return new Response($request
      ->getMethod() . ' ' . UrlHelper::buildQuery($request->query
      ->all()));
  }));
  $event = new GetResponseForExceptionEvent($this->kernel, $request, 'foo', new NotFoundHttpException('foo'));
  $this->customPageSubscriber
    ->onException($event);
  $response = $event
    ->getResponse();
  $result = $response
    ->getContent() . " " . UrlHelper::buildQuery($request->request
    ->all());
  $this
    ->assertEquals('GET name=druplicon&pass=12345&destination=test&_exception_statuscode=404 ', $result);
}