You are here

protected function BrokenSetUpTest::setUp in Drupal 8

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

Installs Drupal with the installation profile specified in \Drupal\simpletest\WebTestBase::$profile into the prefixed database.

Afterwards, installs any additional modules specified in the static \Drupal\simpletest\WebTestBase::$modules property of each class in the class hierarchy.

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.

Overrides WebTestBase::setUp

File

core/modules/simpletest/src/Tests/BrokenSetUpTest.php, line 36

Class

BrokenSetUpTest
Tests a test case that does not call parent::setUp().

Namespace

Drupal\simpletest\Tests

Code

protected function setUp() {

  // If the test is being run from the main site, set up normally.
  if (!$this
    ->isInChildSite()) {
    parent::setUp();
    $this->sharedTriggerFile = $this->publicFilesDirectory . '/trigger';

    // Create and log in user.
    $admin_user = $this
      ->drupalCreateUser([
      'administer unit tests',
    ]);
    $this
      ->drupalLogin($admin_user);
  }
  else {
    $this->sharedTriggerFile = $this->originalFileDirectory . '/trigger';
    if (file_get_contents($this->sharedTriggerFile) === 'setup') {
      throw new \Exception('Broken setup');
    }
    $this
      ->pass('The setUp() method has run.');
  }
}