You are here

public function BlockAdminThemeTest::testSevenAdminTheme in Drupal 9

Same name and namespace in other branches
  1. 8 core/modules/block/tests/src/Functional/BlockAdminThemeTest.php \Drupal\Tests\block\Functional\BlockAdminThemeTest::testSevenAdminTheme()

Ensure contextual links are disabled in Seven theme.

File

core/modules/block/tests/src/Functional/BlockAdminThemeTest.php, line 54

Class

BlockAdminThemeTest
Tests the block system with admin themes.

Namespace

Drupal\Tests\block\Functional

Code

public function testSevenAdminTheme() {

  // Create administrative user.
  $admin_user = $this
    ->drupalCreateUser([
    'access administration pages',
    'administer themes',
    'access contextual links',
    'view the administration theme',
  ]);
  $this
    ->drupalLogin($admin_user);

  // Install admin theme and confirm that tab is accessible.
  \Drupal::service('theme_installer')
    ->install([
    'seven',
  ]);
  $edit['admin_theme'] = 'seven';
  $this
    ->drupalGet('admin/appearance');
  $this
    ->submitForm($edit, 'Save configuration');

  // Define our block settings.
  $settings = [
    'theme' => 'seven',
    'region' => 'header',
  ];

  // Place a block.
  $block = $this
    ->drupalPlaceBlock('local_tasks_block', $settings);

  // Open admin page.
  $this
    ->drupalGet('admin');

  // Check if contextual link classes are unavailable.
  $this
    ->assertSession()
    ->responseNotContains('<div data-contextual-id="block:block=' . $block
    ->id() . ':langcode=en"></div>');
  $this
    ->assertSession()
    ->responseNotContains('contextual-region');
}