function AjaxPageStateTest::testHandle
Tests that the query and request libraries are merged.
@dataProvider providerHandle
File
-
core/
tests/ Drupal/ Tests/ Core/ StackMiddleware/ AjaxPageStateTest.php, line 25
Class
- AjaxPageStateTest
- @coversDefaultClass \Drupal\Core\StackMiddleware\AjaxPageState @group StackMiddleware
Namespace
Drupal\Tests\Core\StackMiddlewareCode
public function testHandle(?string $query_libraries, ?string $request_libraries, ?string $query_expected, ?string $request_expected) : void {
$request = new Request();
if ($query_libraries) {
$request->query
->set('ajax_page_state', [
'libraries' => $query_libraries,
]);
}
if ($request_libraries) {
$request->request
->set('ajax_page_state', [
'libraries' => $request_libraries,
]);
}
$result_request = new Request();
if ($query_expected) {
$result_request->query
->set('ajax_page_state', [
'libraries' => $query_expected,
]);
}
if ($request_expected) {
$result_request->request
->set('ajax_page_state', [
'libraries' => $request_expected,
]);
}
$kernel = $this->prophesize(HttpKernelInterface::class);
$kernel->handle($result_request, HttpKernelInterface::MAIN_REQUEST, TRUE)
->shouldBeCalled()
->willReturn($this->createMock(Response::class));
$middleware = new AjaxPageState($kernel->reveal());
$middleware->handle($request);
// Ensure the modified request matches the expected request.
$this->assertEquals($request->request
->all(), $result_request->request
->all());
$this->assertEquals($request->query
->all(), $result_request->query
->all());
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.