From 70ebc5e784cd6daf72a3ceeebc71b5a0032badec Mon Sep 17 00:00:00 2001 From: webchick Date: Thu, 3 Nov 2011 21:12:28 -0700 Subject: Issue #1103590 follow-up by Tor Arne Thune, dcrocks: Add tests for blocks being added to 'hidden' region. --- modules/block/block.test | 36 ++++++++++ .../tests/block_test_theme/block_test_theme.info | 14 ++++ themes/tests/block_test_theme/page.tpl.php | 78 ++++++++++++++++++++++ 3 files changed, 128 insertions(+) create mode 100644 themes/tests/block_test_theme/block_test_theme.info create mode 100644 themes/tests/block_test_theme/page.tpl.php diff --git a/modules/block/block.test b/modules/block/block.test index 216668719..9639b2c10 100644 --- a/modules/block/block.test +++ b/modules/block/block.test @@ -751,3 +751,39 @@ class BlockTemplateSuggestionsUnitTest extends DrupalUnitTestCase { $this->assertEqual($variables2['theme_hook_suggestions'], array('block__footer', 'block__block', 'block__block__hyphen_test'), t('Hyphens (-) in block delta were replaced by underscore (_)')); } } + +/** + * Tests that hidden regions do not inherit blocks when a theme is enabled. + */ +class BlockHiddenRegionTestCase extends DrupalWebTestCase { + public static function getInfo() { + return array( + 'name' => 'Blocks not in hidden region', + 'description' => 'Checks that a newly enabled theme does not inherit blocks to its hidden regions.', + 'group' => 'Block', + ); + } + + /** + * Tests that hidden regions do not inherit blocks when a theme is enabled. + */ + function testBlockNotInHiddenRegion() { + // Create administrative user. + $admin_user = $this->drupalCreateUser(array('administer blocks', 'administer themes', 'search content')); + $this->drupalLogin($admin_user); + + // Enable "block_test_theme" and set it as the default theme. + $theme = 'block_test_theme'; + theme_enable(array($theme)); + variable_set('theme_default', $theme); + menu_rebuild(); + + // Ensure that "block_test_theme" is set as the default theme. + $this->drupalGet('admin/structure/block'); + $this->assertText('Block test theme(' . t('active tab') . ')', t('Default local task on blocks admin page is the block test theme.')); + + // Ensure that the search form block is displayed. + $this->drupalGet(''); + $this->assertText('Search form', t('Block was displayed on the front page.')); + } +} diff --git a/themes/tests/block_test_theme/block_test_theme.info b/themes/tests/block_test_theme/block_test_theme.info new file mode 100644 index 000000000..06b6e995f --- /dev/null +++ b/themes/tests/block_test_theme/block_test_theme.info @@ -0,0 +1,14 @@ +name = Block test theme +description = Theme for testing the block system +core = 7.x +hidden = TRUE + +regions[sidebar_first] = Left sidebar +regions_hidden[] = sidebar_first +regions[sidebar_second] = Right sidebar +regions_hidden[] = sidebar_second +regions[content] = Content +regions[header] = Header +regions[footer] = Footer +regions[highlighted] = Highlighted +regions[help] = Help diff --git a/themes/tests/block_test_theme/page.tpl.php b/themes/tests/block_test_theme/page.tpl.php new file mode 100644 index 000000000..ba72882ef --- /dev/null +++ b/themes/tests/block_test_theme/page.tpl.php @@ -0,0 +1,78 @@ + + +
+ + + + + + + + + + + + + +
+ +
+
+ + +

+ +
+ + + + +
+
+ + + +
-- cgit v1.2.3