function OptionsRequestSubscriberTest::testWithOptionsRequest

Same name and namespace in other branches
  1. 9 core/tests/Drupal/Tests/Core/EventSubscriber/OptionsRequestSubscriberTest.php \Drupal\Tests\Core\EventSubscriber\OptionsRequestSubscriberTest::testWithOptionsRequest()
  2. 8.9.x core/tests/Drupal/Tests/Core/EventSubscriber/OptionsRequestSubscriberTest.php \Drupal\Tests\Core\EventSubscriber\OptionsRequestSubscriberTest::testWithOptionsRequest()
  3. 11.x core/tests/Drupal/Tests/Core/EventSubscriber/OptionsRequestSubscriberTest.php \Drupal\Tests\Core\EventSubscriber\OptionsRequestSubscriberTest::testWithOptionsRequest()

@covers ::onRequest
@dataProvider providerTestOnRequestWithOptionsRequest

File

core/tests/Drupal/Tests/Core/EventSubscriber/OptionsRequestSubscriberTest.php, line 60

Class

OptionsRequestSubscriberTest
@coversDefaultClass \Drupal\Core\EventSubscriber\OptionsRequestSubscriber[[api-linebreak]] @group EventSubscriber

Namespace

Drupal\Tests\Core\EventSubscriber

Code

public function testWithOptionsRequest(RouteCollection $collection, $expected_header) : void {
  $kernel = $this->prophesize(HttpKernelInterface::class);
  $request = Request::create('/example', 'OPTIONS');
  $route_provider = $this->prophesize(RouteProviderInterface::class);
  $route_provider->getRouteCollectionForRequest($request)
    ->willReturn($collection)
    ->shouldBeCalled();
  $subscriber = new OptionsRequestSubscriber($route_provider->reveal());
  $event = new RequestEvent($kernel->reveal(), $request, HttpKernelInterface::MAIN_REQUEST);
  $subscriber->onRequest($event);
  $this->assertTrue($event->hasResponse());
  $response = $event->getResponse();
  $this->assertEquals(200, $response->getStatusCode());
  $this->assertEquals($expected_header, $response->headers
    ->get('Allow'));
}

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