BlockInvalidRegionTest.php in Drupal 9
File
core/modules/block/tests/src/Functional/BlockInvalidRegionTest.php
View source
<?php
namespace Drupal\Tests\block\Functional;
use Drupal\Tests\BrowserTestBase;
use Drupal\block\Entity\Block;
class BlockInvalidRegionTest extends BrowserTestBase {
protected static $modules = [
'block',
'block_test',
];
protected $defaultTheme = 'classy';
protected function setUp() : void {
parent::setUp();
$admin_user = $this
->drupalCreateUser([
'administer site configuration',
'access administration pages',
'administer blocks',
]);
$this
->drupalLogin($admin_user);
}
public function testBlockInInvalidRegion() {
$block = $this
->drupalPlaceBlock('test_html');
\Drupal::configFactory()
->getEditable('block.block.' . $block
->id())
->set('region', 'invalid_region')
->save();
$block = Block::load($block
->id());
$warning_message = 'The block ' . $block
->id() . ' was assigned to the invalid region invalid_region and has been disabled.';
$this
->drupalGet('admin/config/development/performance');
$this
->submitForm([], 'Clear all caches');
$this
->assertSession()
->pageTextContains($warning_message);
$this
->drupalGet('admin/config/development/performance');
$this
->submitForm([], 'Clear all caches');
$this
->assertSession()
->pageTextNotContains($warning_message);
\Drupal::configFactory()
->getEditable('block.block.' . $block
->id())
->set('region', 'invalid_region')
->save();
$block = Block::load($block
->id());
$this
->drupalGet('admin/config/development/performance');
$this
->submitForm([], 'Clear all caches');
$this
->assertSession()
->pageTextNotContains($warning_message);
}
}
Classes
Name |
Description |
BlockInvalidRegionTest |
Tests that an active block assigned to a non-existing region triggers the
warning message and is disabled. |