function BlockInstallTest::testCacheTagInvalidationUponInstallation

File

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

Class

BlockInstallTest
Tests block module's installation.

Namespace

Drupal\Tests\block\Functional

Code

public function testCacheTagInvalidationUponInstallation() {
  // Warm the page cache.
  $this->drupalGet('');
  $this->assertNoText('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->container
    ->get('router.builder')
    ->rebuild();
  $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->assertCacheTag('config:block_list');
  $this->assertText('Powered by Drupal');
}

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