function BlockTestCase::moveBlockToRegion

5 calls to BlockTestCase::moveBlockToRegion()
BlockTestCase::testBlock in drupal/modules/block/block.test
Test configuring and moving a module-define block to specific regions.
BlockTestCase::testBlockVisibility in drupal/modules/block/block.test
Test block visibility.
BlockTestCase::testBlockVisibilityListedEmpty in drupal/modules/block/block.test
Test block visibility when using "pages" restriction but leaving "pages" textarea empty
BlockTestCase::testBlockVisibilityPerUser in drupal/modules/block/block.test
Test user customization of block visibility.
BlockTestCase::testCustomBlock in drupal/modules/block/block.test
Test creating custom block, moving it to a specific region and then deleting it.

File

drupal/modules/block/block.test, line 338
Tests for block.module.

Class

BlockTestCase
@file Tests for block.module.

Code

function moveBlockToRegion($block, $region) {

  // Set the created block to a specific region.
  $edit = array();
  $edit['blocks[' . $block['module'] . '_' . $block['delta'] . '][region]'] = $region;
  $this
    ->drupalPost('admin/structure/block', $edit, t('Save blocks'));

  // Confirm that the block was moved to the proper region.
  $this
    ->assertText(t('The block settings have been updated.'), format_string('Block successfully moved to %region_name region.', array(
    '%region_name' => $region,
  )));

  // Confirm that the block is being displayed.
  $this
    ->drupalGet('node');
  $this
    ->assertText(t($block['title']), 'Block successfully being displayed on the page.');

  // Confirm that the custom block was found at the proper region.
  $xpath = $this
    ->buildXPathQuery('//div[@class=:region-class]//div[@id=:block-id]/*', array(
    ':region-class' => 'region region-' . str_replace('_', '-', $region),
    ':block-id' => 'block-' . $block['module'] . '-' . $block['delta'],
  ));
  $this
    ->assertFieldByXPath($xpath, NULL, format_string('Custom block found in %region_name region.', array(
    '%region_name' => $region,
  )));
}