function CacheTagsInvalidatorTest::testInvalidateTags
Same name in other branches
- 8.9.x core/tests/Drupal/Tests/Core/Cache/CacheTagsInvalidatorTest.php \Drupal\Tests\Core\Cache\CacheTagsInvalidatorTest::testInvalidateTags()
- 10 core/tests/Drupal/Tests/Core/Cache/CacheTagsInvalidatorTest.php \Drupal\Tests\Core\Cache\CacheTagsInvalidatorTest::testInvalidateTags()
- 11.x core/tests/Drupal/Tests/Core/Cache/CacheTagsInvalidatorTest.php \Drupal\Tests\Core\Cache\CacheTagsInvalidatorTest::testInvalidateTags()
@covers ::invalidateTags @covers ::addInvalidator
File
-
core/
tests/ Drupal/ Tests/ Core/ Cache/ CacheTagsInvalidatorTest.php, line 28
Class
- CacheTagsInvalidatorTest
- @coversDefaultClass \Drupal\Core\Cache\CacheTagsInvalidator @group Cache
Namespace
Drupal\Tests\Core\CacheCode
public function testInvalidateTags() {
$cache_tags_invalidator = new CacheTagsInvalidator();
// This does not actually implement,
// \Drupal\Cache\Cache\CacheBackendInterface but we can not mock from two
// interfaces, we would need a test class for that.
$invalidator_cache_bin = $this->createMock('\\Drupal\\Core\\Cache\\CacheTagsInvalidator');
$invalidator_cache_bin->expects($this->once())
->method('invalidateTags')
->with([
'node:1',
]);
// We do not have to define that invalidateTags() is never called as the
// interface does not define that method, trying to call it would result in
// a fatal error.
$non_invalidator_cache_bin = $this->createMock('\\Drupal\\Core\\Cache\\CacheBackendInterface');
$container = new Container();
$container->set('cache.invalidator_cache_bin', $invalidator_cache_bin);
$container->set('cache.non_invalidator_cache_bin', $non_invalidator_cache_bin);
$container->setParameter('cache_bins', [
'cache.invalidator_cache_bin' => 'invalidator_cache_bin',
'cache.non_invalidator_cache_bin' => 'non_invalidator_cache_bin',
]);
$cache_tags_invalidator->setContainer($container);
$invalidator = $this->createMock('\\Drupal\\Core\\Cache\\CacheTagsInvalidator');
$invalidator->expects($this->once())
->method('invalidateTags')
->with([
'node:1',
]);
$cache_tags_invalidator->addInvalidator($invalidator);
$cache_tags_invalidator->invalidateTags([
'node:1',
]);
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.