search_api_meilisearch-1.0.x-dev/tests/src/Kernel/MeilisearchKernelTestBase.php
tests/src/Kernel/MeilisearchKernelTestBase.php
<?php
namespace Drupal\Tests\search_api_meilisearch\Kernel;
use Drupal\KernelTests\KernelTestBase;
use Drupal\search_api_meilisearch\Api\MeilisearchApiServiceInterface;
use Drupal\Tests\search_api_meilisearch\Traits\Api\ServiceCreationTrait;
/**
* Provides a base testing class for api service.
*/
abstract class MeilisearchKernelTestBase extends KernelTestBase {
use ServiceCreationTrait;
/**
* {@inheritdoc}
*/
protected static $modules = [
'search_api_meilisearch',
];
/**
* The api service.
*
* @var \Drupal\search_api_meilisearch\Api\MeilisearchApiServiceInterface
*/
protected MeilisearchApiServiceInterface $apiService;
/**
* {@inheritdoc}
*/
protected function setUp(): void {
parent::setUp();
$this->apiService = $this->getInstance();
}
/**
* {@inheritdoc}
*/
protected function tearDown(): void {
$this->apiService = $this->getInstance();
foreach ($this->getTestIndexes() as $index) {
$this->apiService->removeIndex($index);
}
parent::tearDown();
}
/**
* Retrieves a list of indexes used in the test.
*
* Used to remove test indexes from the Meilisearch after the tests.
*
* @return string[]
* The list of test index names.
*/
abstract protected function getTestIndexes(): array;
}
