protected function AssertPageCacheContextsAndTagsTrait::assertPageCacheContextsAndTags in Zircon Profile 8
Same name and namespace in other branches
- 8.0 core/modules/system/src/Tests/Cache/AssertPageCacheContextsAndTagsTrait.php \Drupal\system\Tests\Cache\AssertPageCacheContextsAndTagsTrait::assertPageCacheContextsAndTags()
Asserts page cache miss, then hit for the given URL; checks cache headers.
Parameters
\Drupal\Core\Url $url: The URL to test.
string[] $expected_contexts: The expected cache contexts for the given URL.
string[] $expected_tags: The expected cache tags for the given URL.
3 calls to AssertPageCacheContextsAndTagsTrait::assertPageCacheContextsAndTags()
- FrontPageTest::doTestFrontPageViewCacheTags in core/
modules/ node/ src/ Tests/ Views/ FrontPageTest.php - Tests the cache tags on the front page.
- GlossaryTest::testGlossaryView in core/
modules/ views/ src/ Tests/ GlossaryTest.php - Tests the default glossary view.
- PageCacheTagsIntegrationTest::testPageCacheTags in core/
modules/ page_cache/ src/ Tests/ PageCacheTagsIntegrationTest.php - Test that cache tags are properly bubbled up to the page level.
File
- core/
modules/ system/ src/ Tests/ Cache/ AssertPageCacheContextsAndTagsTrait.php, line 58 - Contains \Drupal\system\Tests\Cache\AssertPageCacheContextsAndTagsTrait.
Class
- AssertPageCacheContextsAndTagsTrait
- Provides test assertions for testing page-level cache contexts & tags.
Namespace
Drupal\system\Tests\CacheCode
protected function assertPageCacheContextsAndTags(Url $url, array $expected_contexts, array $expected_tags) {
$absolute_url = $url
->setAbsolute()
->toString();
sort($expected_contexts);
sort($expected_tags);
// Assert cache miss + expected cache contexts + tags.
$this
->drupalGet($absolute_url);
$this
->assertEqual($this
->drupalGetHeader('X-Drupal-Cache'), 'MISS');
$this
->assertCacheTags($expected_tags);
$this
->assertCacheContexts($expected_contexts);
// Assert cache hit + expected cache contexts + tags.
$this
->drupalGet($absolute_url);
$this
->assertCacheTags($expected_tags);
$this
->assertCacheContexts($expected_contexts);
// Assert page cache item + expected cache tags.
$cid_parts = array(
$url
->setAbsolute()
->toString(),
'html',
);
$cid = implode(':', $cid_parts);
$cache_entry = \Drupal::cache('render')
->get($cid);
sort($cache_entry->tags);
$this
->assertEqual($cache_entry->tags, $expected_tags);
$this
->debugCacheTags($cache_entry->tags, $expected_tags);
}