You are here

protected function ViewTestBase::enableViewsTestModule in Drupal 8

Same name in this branch
  1. 8 core/modules/views/src/Tests/ViewTestBase.php \Drupal\views\Tests\ViewTestBase::enableViewsTestModule()
  2. 8 core/modules/views/tests/src/Functional/ViewTestBase.php \Drupal\Tests\views\Functional\ViewTestBase::enableViewsTestModule()

Sets up the views_test_data.module.

Because the schema of views_test_data.module is dependent on the test using it, it cannot be enabled normally.

1 call to ViewTestBase::enableViewsTestModule()
UITestBase::setUp in core/modules/views_ui/src/Tests/UITestBase.php
Sets up a Drupal site for running functional and integration tests.

File

core/modules/views/src/Tests/ViewTestBase.php, line 49

Class

ViewTestBase
Defines a base class for Views testing in the full web test environment.

Namespace

Drupal\views\Tests

Code

protected function enableViewsTestModule() {

  // Define the schema and views data variable before enabling the test module.
  \Drupal::state()
    ->set('views_test_data_schema', $this
    ->schemaDefinition());
  \Drupal::state()
    ->set('views_test_data_views_data', $this
    ->viewsData());
  \Drupal::service('module_installer')
    ->install([
    'views_test_data',
  ]);
  $this
    ->resetAll();
  $this
    ->rebuildContainer();
  $this->container
    ->get('module_handler')
    ->reload();

  // Load the test dataset.
  $data_set = $this
    ->dataSet();
  $query = Database::getConnection()
    ->insert('views_test_data')
    ->fields(array_keys($data_set[0]));
  foreach ($data_set as $record) {
    $query
      ->values($record);
  }
  $query
    ->execute();
}