You are here

protected function PreviewTest::enableViewsTestModule in Drupal 10

Same name and namespace in other branches
  1. 8 core/modules/views_ui/tests/src/FunctionalJavascript/PreviewTest.php \Drupal\Tests\views_ui\FunctionalJavascript\PreviewTest::enableViewsTestModule()
  2. 9 core/modules/views_ui/tests/src/FunctionalJavascript/PreviewTest.php \Drupal\Tests\views_ui\FunctionalJavascript\PreviewTest::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.

File

core/modules/views_ui/tests/src/FunctionalJavascript/PreviewTest.php, line 67

Class

PreviewTest
Tests the UI preview functionality.

Namespace

Drupal\Tests\views_ui\FunctionalJavascript

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();
}