function AssertPageCacheContextsAndTagsTrait::assertCacheTags

Same name in this branch
  1. 8.9.x core/modules/system/tests/src/Functional/Cache/AssertPageCacheContextsAndTagsTrait.php \Drupal\Tests\system\Functional\Cache\AssertPageCacheContextsAndTagsTrait::assertCacheTags()
Same name and namespace in other branches
  1. 9 core/modules/system/tests/src/Functional/Cache/AssertPageCacheContextsAndTagsTrait.php \Drupal\Tests\system\Functional\Cache\AssertPageCacheContextsAndTagsTrait::assertCacheTags()
  2. 10 core/modules/system/tests/src/Functional/Cache/AssertPageCacheContextsAndTagsTrait.php \Drupal\Tests\system\Functional\Cache\AssertPageCacheContextsAndTagsTrait::assertCacheTags()
  3. 11.x core/modules/system/tests/src/Functional/Cache/AssertPageCacheContextsAndTagsTrait.php \Drupal\Tests\system\Functional\Cache\AssertPageCacheContextsAndTagsTrait::assertCacheTags()

Ensures that some cache tags are present in the current response.

Parameters

string[] $expected_tags: The expected tags.

bool $include_default_tags: (optional) Whether the default cache tags should be included.

1 call to AssertPageCacheContextsAndTagsTrait::assertCacheTags()
AssertPageCacheContextsAndTagsTrait::assertPageCacheContextsAndTags in core/modules/system/src/Tests/Cache/AssertPageCacheContextsAndTagsTrait.php
Asserts page cache miss, then hit for the given URL; checks cache headers.

File

core/modules/system/src/Tests/Cache/AssertPageCacheContextsAndTagsTrait.php, line 129

Class

AssertPageCacheContextsAndTagsTrait
Provides test assertions for testing page-level cache contexts & tags.

Namespace

Drupal\system\Tests\Cache

Code

protected function assertCacheTags(array $expected_tags, $include_default_tags = TRUE) {
    // The anonymous role cache tag is only added if the user is anonymous.
    if ($include_default_tags) {
        if (\Drupal::currentUser()->isAnonymous()) {
            $expected_tags = Cache::mergeTags($expected_tags, [
                'config:user.role.anonymous',
            ]);
        }
        $expected_tags[] = 'http_response';
    }
    $actual_tags = $this->getCacheHeaderValues('X-Drupal-Cache-Tags');
    $expected_tags = array_unique($expected_tags);
    sort($expected_tags);
    sort($actual_tags);
    $this->assertIdentical($actual_tags, $expected_tags);
    $this->debugCacheTags($actual_tags, $expected_tags);
}

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