You are here

function MenuTrailTestCase::setUp in Drupal 7

Sets up a Drupal site for running functional and integration tests.

Generates a random database prefix and installs Drupal with the specified installation profile in DrupalWebTestCase::$profile into the prefixed database. Afterwards, installs any additional modules specified by the test.

After installation all caches are flushed and several configuration values are reset to the values of the parent site executing the test, since the default values may be incompatible with the environment in which tests are being executed.

Parameters

...: List of modules to enable for the duration of the test. This can be either a single array or a variable number of string arguments.

Overrides MenuWebTestCase::setUp

See also

DrupalWebTestCase::prepareDatabasePrefix()

DrupalWebTestCase::changeDatabasePrefix()

DrupalWebTestCase::prepareEnvironment()

File

modules/simpletest/tests/menu.test, line 1548
Provides SimpleTests for menu.inc.

Class

MenuTrailTestCase
Tests active menu trails.

Code

function setUp() {
  $modules = func_get_args();
  if (isset($modules[0]) && is_array($modules[0])) {
    $modules = $modules[0];
  }
  $modules[] = 'menu_test';
  parent::setUp($modules);
  $this->admin_user = $this
    ->drupalCreateUser(array(
    'administer site configuration',
    'access administration pages',
  ));
  $this
    ->drupalLogin($this->admin_user);

  // This test puts menu links in the Navigation menu and then tests for
  // their presence on the page, so we need to ensure that the Navigation
  // block will be displayed in all active themes.
  db_update('block')
    ->fields(array(
    // Use a region that is valid for all themes.
    'region' => 'content',
    'status' => 1,
  ))
    ->condition('module', 'system')
    ->condition('delta', 'navigation')
    ->execute();

  // This test puts menu links in the Management menu and then tests for
  // their presence on the page, so we need to ensure that the Management
  // block will be displayed in all active themes.
  db_update('block')
    ->fields(array(
    // Use a region that is valid for all themes.
    'region' => 'content',
    'status' => 1,
  ))
    ->condition('module', 'system')
    ->condition('delta', 'management')
    ->execute();
}