public function ChainResponsePolicyTest::testStopChainOnFirstDeny in Drupal 9
Same name and namespace in other branches
- 8 core/tests/Drupal/Tests/Core/PageCache/ChainResponsePolicyTest.php \Drupal\Tests\Core\PageCache\ChainResponsePolicyTest::testStopChainOnFirstDeny()
Asserts that check() returns immediately when a rule returned DENY.
File
- core/
tests/ Drupal/ Tests/ Core/ PageCache/ ChainResponsePolicyTest.php, line 111
Class
- ChainResponsePolicyTest
- @coversDefaultClass \Drupal\Core\PageCache\ChainResponsePolicy @group PageCache
Namespace
Drupal\Tests\Core\PageCacheCode
public function testStopChainOnFirstDeny() {
$rule1 = $this
->createMock('Drupal\\Core\\PageCache\\ResponsePolicyInterface');
$rule1
->expects($this
->once())
->method('check')
->with($this->response, $this->request);
$this->policy
->addPolicy($rule1);
$deny_rule = $this
->createMock('Drupal\\Core\\PageCache\\ResponsePolicyInterface');
$deny_rule
->expects($this
->once())
->method('check')
->with($this->response, $this->request)
->will($this
->returnValue(ResponsePolicyInterface::DENY));
$this->policy
->addPolicy($deny_rule);
$ignored_rule = $this
->createMock('Drupal\\Core\\PageCache\\ResponsePolicyInterface');
$ignored_rule
->expects($this
->never())
->method('check');
$this->policy
->addPolicy($ignored_rule);
$actual_result = $this->policy
->check($this->response, $this->request);
$this
->assertSame(ResponsePolicyInterface::DENY, $actual_result);
}