diff --git a/search_api_db/tests/src/Kernel/BackendTest.php b/search_api_db/tests/src/Kernel/BackendTest.php index 570871c..664376f 100644 --- a/search_api_db/tests/src/Kernel/BackendTest.php +++ b/search_api_db/tests/src/Kernel/BackendTest.php @@ -38,7 +38,15 @@ class BackendTest extends KernelTestBase { * * @var string[] */ - public static $modules = array('field', 'search_api', 'search_api_db', 'search_api_test_db'); + public static $modules = array( + 'field', + 'search_api', + 'search_api_db', + 'search_api_test_db', + 'user', + 'system', + 'entity_test', + ); /** * A search server ID. diff --git a/tests/src/Kernel/CliTest.php b/tests/src/Kernel/CliTest.php index 3d6f6cf..1714c23 100644 --- a/tests/src/Kernel/CliTest.php +++ b/tests/src/Kernel/CliTest.php @@ -31,7 +31,13 @@ class CliTest extends KernelTestBase { * * @var string[] */ - public static $modules = array('search_api', 'search_api_test_backend'); + public static $modules = array( + 'search_api', + 'search_api_test_backend', + 'user', + 'system', + 'entity_test', + ); /** * {@inheritdoc} @@ -41,6 +47,7 @@ class CliTest extends KernelTestBase { $this->installSchema('search_api', array('search_api_item', 'search_api_task')); $this->installSchema('system', 'queue'); + $this->installEntitySchema('entity_test'); // Create a test server. $this->server = Server::create(array( @@ -72,14 +79,14 @@ class CliTest extends KernelTestBase { 'type' => 'item', 'keywords' => array('Orange', 'orange', 'örange', 'Orange'), 'category' => 'item_category' - )); + ))->save(); EntityTest::create(array( 'name' => 'foo bar baz föö smile', 'body' => 'test test case Case casE', 'type' => 'item', 'keywords' => array('strawberry', 'llama'), 'category' => 'item_category' - )); + ))->save(); // Create a test index. /** @var \Drupal\search_api\IndexInterface $index */ @@ -106,14 +113,14 @@ class CliTest extends KernelTestBase { 'type' => 'item', 'keywords' => array('strawberry', 'llama'), 'category' => 'item_category' - )); + ))->save(); EntityTest::create(array( 'name' => 'foo bar baz föö smile', 'body' => 'test test case Case casE', 'type' => 'item', 'keywords' => array('strawberry', 'llama'), 'category' => 'item_category' - )); + ))->save(); $total_items = $index->getTracker()->getTotalItemsCount(); $indexed_items = $index->getTracker()->getIndexedItemsCount(); diff --git a/tests/src/Kernel/CustomDataTypesTest.php b/tests/src/Kernel/CustomDataTypesTest.php index 5261f1e..9f1a36c 100644 --- a/tests/src/Kernel/CustomDataTypesTest.php +++ b/tests/src/Kernel/CustomDataTypesTest.php @@ -45,9 +45,19 @@ class CustomDataTypesTest extends KernelTestBase { 'search_api_db', 'search_api_test_db', 'search_api_test_backend', + 'user', + 'system', + 'entity_test', ); /** + * An array of test entities. + * + * @var \Drupal\entity_test\Entity\EntityTest[] + */ + protected $entities; + + /** * {@inheritdoc} */ public function setUp() { @@ -56,6 +66,7 @@ class CustomDataTypesTest extends KernelTestBase { $this->installSchema('search_api', array('search_api_item', 'search_api_task')); $this->installSchema('system', array('router')); $this->installSchema('user', array('users_data')); + $this->installEntitySchema('entity_test'); // Do not use a batch for tracking the initial items after creating an // index when running the tests via the GUI. Otherwise, it seems Drupal's @@ -65,20 +76,20 @@ class CustomDataTypesTest extends KernelTestBase { $this->installConfig(array('search_api_test_db')); // Create test entities. - EntityTest::create(array( + $this->entities[1] = EntityTest::create(array( 'name' => 'foo bar baz föö smile' . json_decode('"\u1F601"'), 'body' => 'test test case Case casE', 'type' => 'item', 'keywords' => array('Orange', 'orange', 'örange', 'Orange'), 'category' => 'item_category' - )); - EntityTest::create(array( + ))->save(); + $this->entities[2] = EntityTest::create(array( 'name' => 'foo bar baz föö smile', 'body' => 'test test case Case casE', 'type' => 'item', 'keywords' => array('strawberry', 'llama'), 'category' => 'item_category' - )); + ))->save(); // Create a test server. $this->server = Server::create(array( diff --git a/tests/src/Kernel/LanguageIntegrationTest.php b/tests/src/Kernel/LanguageIntegrationTest.php index 4049f70..f738f60 100644 --- a/tests/src/Kernel/LanguageIntegrationTest.php +++ b/tests/src/Kernel/LanguageIntegrationTest.php @@ -10,6 +10,7 @@ namespace Drupal\Tests\search_api\Kernel; use Drupal\Component\Render\FormattableMarkup; use Drupal\entity_test\Entity\EntityTestMul; use Drupal\KernelTests\KernelTestBase; +use Drupal\language\Entity\ConfigurableLanguage; use Drupal\search_api\Entity\Index; use Drupal\search_api\Entity\Server; @@ -46,7 +47,21 @@ class LanguageIntegrationTest extends KernelTestBase { * * @var string[] */ - public static $modules = array('search_api', 'search_api_test_backend'); + public static $modules = array( + 'search_api', + 'search_api_test_backend', + 'language', + 'user', + 'system', + 'entity_test', + ); + + /** + * An array of langcodes. + * + * @var string[] + */ + protected $langcodes; /** * {@inheritdoc} @@ -54,7 +69,25 @@ class LanguageIntegrationTest extends KernelTestBase { public function setUp() { parent::setUp(); + // Enable translation for the entity_test module. + \Drupal::state()->set('entity_test.translation', TRUE); + $this->installSchema('search_api', array('search_api_item', 'search_api_task')); + $this->installEntitySchema('entity_test_mul'); + + // Create the default languages. + $this->installConfig(array('language')); + $this->langcodes = array(); + for ($i = 0; $i < 3; ++$i) { + /** @var \Drupal\language\Entity\ConfigurableLanguage $language */ + $language = ConfigurableLanguage::create(array( + 'id' => 'l' . $i, + 'label' => 'language - ' . $i, + 'weight' => $i, + )); + $this->langcodes[$i] = $language->getId(); + $language->save(); + } // Do not use a batch for tracking the initial items after creating an // index when running the tests via the GUI. Otherwise, it seems Drupal's