4 * Contains \Drupal\block_class\BlockClassTest.
7 namespace Drupal\block_class\Tests;
9 use Drupal\simpletest\WebTestBase;
12 * Tests the custom CSS classes for blocks.
16 class BlockClassTest extends WebTestBase {
23 public static $modules = array('block', 'block_class');
26 * Tests the custom CSS classes for blocks.
28 public function testBlockClass() {
30 $admin_user = $this->drupalCreateUser(array(
31 'administer block classes',
34 $this->drupalLogin($admin_user);
36 // Add a content block with custom CSS class.
37 $this->drupalGet('admin/structure/block/add/system_main_block/classy', ['query' => ['region' => 'content']]);
39 'region' => 'content',
40 'third_party_settings[block_class][classes]' => 'TestClass_content'
42 $this->drupalPostForm(NULL, $edit, t('Save block'));
44 // Add a user account menu with a custom CSS class.
45 $this->drupalGet('admin/structure/block/add/system_menu_block:account/classy', ['query' => ['region' => 'content']]);
47 'region' => 'secondary_menu',
48 'third_party_settings[block_class][classes]' => 'TestClass_menu'
50 $this->drupalPostForm(NULL, $edit, t('Save block'));
52 // Go to the front page of the user.
53 $this->drupalGet('<front>');
54 // Assert the custom class in the content block.
55 $this->assertRaw('<div id="block-mainpagecontent" class="TestClass_content block block-system block-system-main-block">');
56 // Assert the custom class in user menu.
57 $this->assertRaw('<nav role="navigation" aria-labelledby="block-useraccountmenu-menu" id="block-useraccountmenu" class="TestClass_menu block block-menu navigation menu--account">');