function BlockAdminThemeTest::testClaroAdminTheme

Same name and namespace in other branches
  1. 9 core/modules/block/tests/src/Functional/BlockAdminThemeTest.php \Drupal\Tests\block\Functional\BlockAdminThemeTest::testClaroAdminTheme()
  2. 11.x core/modules/block/tests/src/Functional/BlockAdminThemeTest.php \Drupal\Tests\block\Functional\BlockAdminThemeTest::testClaroAdminTheme()

Ensure contextual links are disabled in Claro 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 testClaroAdminTheme() : void {
  // 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([
    'claro',
  ]);
  $edit['admin_theme'] = 'claro';
  $this->drupalGet('admin/appearance');
  $this->submitForm($edit, 'Save configuration');
  // Define our block settings.
  $settings = [
    'theme' => 'claro',
    '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');
}

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