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