You are here

ConfigSelectorTest.php in Thunder 8.5

File

tests/src/FunctionalJavascript/Integration/ConfigSelectorTest.php
View source
<?php

namespace Drupal\Tests\thunder\FunctionalJavascript\Integration;

use Drupal\Tests\thunder\FunctionalJavascript\ThunderJavascriptTestBase;

/**
 * Tests integration with the config_selector.
 *
 * @group Thunder
 */
class ConfigSelectorTest extends ThunderJavascriptTestBase {

  /**
   * {@inheritdoc}
   */
  protected static $modules = [
    'thunder_testing_demo',
  ];

  /**
   * {@inheritdoc}
   */
  protected static $defaultUserRole = 'administrator';

  /**
   * Tests content view with and without search_api.
   */
  public function testContentViewSearchApi() {
    $assert_session = $this
      ->assertSession();

    // Content lock fields are there by default.
    $this
      ->drupalGet('admin/content');
    $assert_session
      ->elementExists('xpath', '//*[@id="view-title-table-column"]/a');
    $assert_session
      ->elementExists('css', '#block-thunder-admin-content > div > div.view-content');

    // Install search_api.
    $module_installer = \Drupal::service('module_installer');
    $module_installer
      ->install([
      'thunder_search',
    ]);

    // Now we have a search_api based view.
    $this
      ->drupalGet('admin/config/search/search-api/index/content');
    $this
      ->getSession()
      ->getPage()
      ->pressButton('Index now');
    $assert_session
      ->waitForId('edit-index-now');
    $this
      ->drupalGet('admin/content');
    $assert_session
      ->elementExists('xpath', '//*[@id="view-title-table-column"]/a');
    $assert_session
      ->elementExists('css', '#block-thunder-admin-content > div > div.view-content-search-api');

    // Uninstall search_api.
    $module_installer
      ->uninstall([
      'search_api',
    ]);
    drupal_flush_all_caches();

    // The normal view is back.
    $this
      ->drupalGet('admin/content');
    $assert_session
      ->elementExists('xpath', '//*[@id="view-title-table-column"]/a');
    $assert_session
      ->elementExists('css', '#block-thunder-admin-content > div > div.view-content');
  }

}

Classes

Namesort descending Description
ConfigSelectorTest Tests integration with the config_selector.