function BlockInstallTest::testCacheTagInvalidationUponInstallation

Same name and namespace in other branches
  1. 9 core/modules/block/tests/src/Functional/BlockInstallTest.php \Drupal\Tests\block\Functional\BlockInstallTest::testCacheTagInvalidationUponInstallation()
  2. 8.9.x core/modules/block/tests/src/Functional/BlockInstallTest.php \Drupal\Tests\block\Functional\BlockInstallTest::testCacheTagInvalidationUponInstallation()
  3. 10 core/modules/block/tests/src/Functional/BlockInstallTest.php \Drupal\Tests\block\Functional\BlockInstallTest::testCacheTagInvalidationUponInstallation()

Tests cache tag invalidation after installing the block module.

File

core/modules/block/tests/src/Functional/BlockInstallTest.php, line 24

Class

BlockInstallTest
Tests block module's installation.

Namespace

Drupal\Tests\block\Functional

Code

public function testCacheTagInvalidationUponInstallation() : void {
  // Warm the page cache.
  $this->drupalGet('');
  $this->assertSession()
    ->pageTextNotContains('Powered by Drupal');
  $this->assertSession()
    ->responseHeaderNotContains('X-Drupal-Cache-Tags', 'config:block_list');
  // Install the block module, and place the "Powered by Drupal" block.
  $this->container
    ->get('module_installer')
    ->install([
    'block',
    'shortcut',
  ]);
  $this->rebuildContainer();
  $this->drupalPlaceBlock('system_powered_by_block');
  // Check the same page, block.module's hook_install() should have
  // invalidated the 'rendered' cache tag to make blocks show up.
  $this->drupalGet('');
  $this->assertSession()
    ->responseHeaderContains('X-Drupal-Cache-Tags', 'config:block_list');
  $this->assertSession()
    ->pageTextContains('Powered by Drupal');
}

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