diff --git a/composer.json b/composer.json index fc18ab51959bc2f58daf28521a668e4c35df6acf..37d20ab4786eff00356de1acb528b025fd02a086 100644 --- a/composer.json +++ b/composer.json @@ -5,7 +5,7 @@ "license": "GPL-2.0-or-later", "minimum-stability": "stable", "require": { - "php": "^8", + "php": "^8.1", "drupal/search_api": "^1.23", "makinacorpus/php-lucene": "^1.1", "opensearch-project/opensearch-php": "^2.0" diff --git a/tests/src/Unit/SearchAPI/FieldMapperTest.php b/tests/src/Unit/SearchAPI/FieldMapperTest.php index 7265dc1052f56444d40b2327728f6097a2a1edef..8aa6006aa4f9ac7936492e2fdbe0b82bafdaaf90 100644 --- a/tests/src/Unit/SearchAPI/FieldMapperTest.php +++ b/tests/src/Unit/SearchAPI/FieldMapperTest.php @@ -9,8 +9,10 @@ use Drupal\search_api\IndexInterface; use Drupal\search_api\Item\Field; use Drupal\search_api\Utility\DataTypeHelperInterface; use Drupal\search_api\Utility\FieldsHelper; +use Drupal\search_api_opensearch\Event\FieldMappingEvent; use Drupal\search_api_opensearch\SearchAPI\FieldMapper; use Drupal\Tests\UnitTestCase; +use Prophecy\Argument; use Symfony\Contracts\EventDispatcher\EventDispatcherInterface; /** @@ -32,7 +34,9 @@ class FieldMapperTest extends UnitTestCase { $dataTypeHelper = $this->prophesize(DataTypeHelperInterface::class); $fieldsHelper = new FieldsHelper($entityTypeManager->reveal(), $entityFieldManager->reveal(), $entityTypeBundleInfo->reveal(), $dataTypeHelper->reveal()); + $event = $this->prophesize(FieldMappingEvent::class); $eventDispatcher = $this->prophesize(EventDispatcherInterface::class); + $eventDispatcher->dispatch(Argument::any())->willReturn($event->reveal()); $fieldMapper = new FieldMapper($fieldsHelper, $eventDispatcher->reveal()); $index = $this->prophesize(IndexInterface::class); diff --git a/tests/src/Unit/SearchAPI/IndexParamBuilderTest.php b/tests/src/Unit/SearchAPI/IndexParamBuilderTest.php index 3c85928f54169aab4aa090ea5ac985dc6e638f61..72ae0a1d97e7e8777faa2d961a88a182d9e1142f 100644 --- a/tests/src/Unit/SearchAPI/IndexParamBuilderTest.php +++ b/tests/src/Unit/SearchAPI/IndexParamBuilderTest.php @@ -7,11 +7,14 @@ use Drupal\Core\Entity\EntityTypeBundleInfoInterface; use Drupal\Core\Entity\EntityTypeManagerInterface; use Drupal\search_api\IndexInterface; use Drupal\search_api\Item\Field; +use Drupal\search_api\Item\FieldInterface; use Drupal\search_api\Item\Item; use Drupal\search_api\Utility\DataTypeHelperInterface; use Drupal\search_api\Utility\FieldsHelper; +use Drupal\search_api_opensearch\Event\IndexParamsEvent; use Drupal\search_api_opensearch\SearchAPI\IndexParamBuilder; use Drupal\Tests\UnitTestCase; +use Prophecy\Argument; use Symfony\Contracts\EventDispatcher\EventDispatcherInterface; /** @@ -37,7 +40,10 @@ class IndexParamBuilderTest extends UnitTestCase { $dataTypeHelper = $this->prophesize(DataTypeHelperInterface::class); $fieldsHelper = new FieldsHelper($entityTypeManager->reveal(), $entityFieldManager->reveal(), $entityTypeBundleInfo->reveal(), $dataTypeHelper->reveal()); + $event = $this->prophesize(IndexParamsEvent::class); $eventDispatcher = $this->prophesize(EventDispatcherInterface::class); + $eventDispatcher->dispatch(Argument::any())->willReturn($event->reveal()); + $paramBuilder = new IndexParamBuilder($fieldsHelper, $eventDispatcher->reveal()); $index = $this->prophesize(IndexInterface::class); diff --git a/tests/src/Unit/SearchAPI/Query/FacetParamBuilderTest.php b/tests/src/Unit/SearchAPI/Query/FacetParamBuilderTest.php index bb4e1c347a8fee457e5b07c770de649227d35bd4..0e882a7f8a60e76d7fb0c2153fe566c07c849a8a 100644 --- a/tests/src/Unit/SearchAPI/Query/FacetParamBuilderTest.php +++ b/tests/src/Unit/SearchAPI/Query/FacetParamBuilderTest.php @@ -5,7 +5,7 @@ namespace Drupal\Tests\search_api_opensearch\Unit\SearchAPI\Query; use Drupal\search_api\Query\QueryInterface; use Drupal\search_api_opensearch\SearchAPI\Query\FacetParamBuilder; use Drupal\Tests\UnitTestCase; -use Psr\Log\Test\TestLogger; +use Psr\Log\LoggerInterface; /** * Tests the facet param builder. @@ -19,8 +19,8 @@ class FacetParamBuilderTest extends UnitTestCase { * @covers ::buildFacetParams */ public function testBuildFacetParams() { - $logger = new TestLogger(); - $builder = new FacetParamBuilder($logger); + $logger = $this->prophesize(LoggerInterface::class); + $builder = new FacetParamBuilder($logger->reveal()); $query = $this->prophesize(QueryInterface::class); $query->getOption('search_api_facets', []) diff --git a/tests/src/Unit/SearchAPI/Query/FacetResultParserTest.php b/tests/src/Unit/SearchAPI/Query/FacetResultParserTest.php index 54bc1e6b846dadfcac799376b34b5c1f84ad49a3..d400560cfb480815f60f159360ff44e32cdc2475 100644 --- a/tests/src/Unit/SearchAPI/Query/FacetResultParserTest.php +++ b/tests/src/Unit/SearchAPI/Query/FacetResultParserTest.php @@ -5,7 +5,7 @@ namespace Drupal\Tests\search_api_opensearch\Unit\SearchAPI\Query; use Drupal\search_api\Query\QueryInterface; use Drupal\search_api_opensearch\SearchAPI\Query\FacetResultParser; use Drupal\Tests\UnitTestCase; -use Psr\Log\Test\TestLogger; +use Psr\Log\LoggerInterface; /** * Tests the facets result parser. @@ -19,8 +19,8 @@ class FacetResultParserTest extends UnitTestCase { * @covers ::parseFacetResult */ public function testParseFacetResult() { - $logger = new TestLogger(); - $parser = new FacetResultParser($logger); + $logger = $this->prophesize(LoggerInterface::class); + $parser = new FacetResultParser($logger->reveal()); $query = $this->prophesize(QueryInterface::class); $query->getOption('search_api_facets', []) diff --git a/tests/src/Unit/SearchAPI/Query/FilterBuilderTest.php b/tests/src/Unit/SearchAPI/Query/FilterBuilderTest.php index 5d139f76ee70c1c8a4652dbdf0150ea51344a902..fabb4d2c66a708cbf81540dc797f166d5b4e42e9 100644 --- a/tests/src/Unit/SearchAPI/Query/FilterBuilderTest.php +++ b/tests/src/Unit/SearchAPI/Query/FilterBuilderTest.php @@ -2,13 +2,13 @@ namespace Drupal\Tests\search_api_opensearch\Unit\SearchAPI\Query; -use Drupal\search_api_opensearch\SearchAPI\Query\FilterBuilder; use Drupal\search_api\IndexInterface; use Drupal\search_api\Item\Field; use Drupal\search_api\Query\Condition; use Drupal\search_api\Query\ConditionGroup; +use Drupal\search_api_opensearch\SearchAPI\Query\FilterBuilder; use Drupal\Tests\UnitTestCase; -use Psr\Log\Test\TestLogger; +use Psr\Log\LoggerInterface; /** * Tests the filter builder. @@ -38,8 +38,8 @@ class FilterBuilderTest extends UnitTestCase { 'whiz' => $field2, ]; - $logger = new TestLogger(); - $filterBuilder = new FilterBuilder($logger); + $logger = $this->prophesize(LoggerInterface::class); + $filterBuilder = new FilterBuilder($logger->reveal()); $filters = $filterBuilder->buildFilters($conditionGroup, $fields); $this->assertNotEmpty($filters); @@ -62,8 +62,8 @@ class FilterBuilderTest extends UnitTestCase { * @dataProvider filterTermProvider */ public function testBuildFilterTerm($value, $operator, $expected) { - $logger = new TestLogger(); - $filterBuilder = new FilterBuilder($logger); + $logger = $this->prophesize(LoggerInterface::class); + $filterBuilder = new FilterBuilder($logger->reveal()); $condition = new Condition('foo', $value, $operator); $filterTerm = $filterBuilder->buildFilterTerm($condition); $this->assertEquals($expected, $filterTerm); diff --git a/tests/src/Unit/SearchAPI/Query/QueryParamBuilderTest.php b/tests/src/Unit/SearchAPI/Query/QueryParamBuilderTest.php index 65b8b943e7537820907f150cf2e8c730c9f6148e..46af65a9c4a3b066a044d356f0f5d39e9e102787 100644 --- a/tests/src/Unit/SearchAPI/Query/QueryParamBuilderTest.php +++ b/tests/src/Unit/SearchAPI/Query/QueryParamBuilderTest.php @@ -7,6 +7,7 @@ use Drupal\search_api\Item\FieldInterface; use Drupal\search_api\Query\ConditionGroupInterface; use Drupal\search_api\Query\QueryInterface; use Drupal\search_api\Utility\FieldsHelperInterface; +use Drupal\search_api_opensearch\Event\QueryParamsEvent; use Drupal\search_api_opensearch\SearchAPI\MoreLikeThisParamBuilder; use Drupal\search_api_opensearch\SearchAPI\Query\FacetParamBuilder; use Drupal\search_api_opensearch\SearchAPI\Query\FilterBuilder; @@ -30,6 +31,7 @@ class QueryParamBuilderTest extends UnitTestCase { * @covers :: */ public function testBuildQueryParams() { + $indexId = "foo"; $fieldsHelper = $this->prophesize(FieldsHelperInterface::class); @@ -48,14 +50,14 @@ class QueryParamBuilderTest extends UnitTestCase { $mltParamBuilder = $this->prophesize(MoreLikeThisParamBuilder::class); $facetParamBuilder = $this->prophesize(FacetParamBuilder::class); $eventDispatcher = $this->prophesize(EventDispatcherInterface::class); + $event = new QueryParamsEvent($indexId, []); + $eventDispatcher->dispatch(Argument::any())->willReturn($event); $logger = new NullLogger(); $queryParamBuilder = new QueryParamBuilder($fieldsHelper->reveal(), $sortBuilder->reveal(), $filterBuilder->reveal(), $searchParamBuilder->reveal(), $mltParamBuilder->reveal(), $facetParamBuilder->reveal(), $eventDispatcher->reveal(), $logger); - $indexId = "foo"; $index = $this->prophesize(IndexInterface::class); - $index->id() - ->willReturn($indexId); + $index->id()->willReturn($indexId); $field1 = $this->prophesize(FieldInterface::class); @@ -89,7 +91,6 @@ class QueryParamBuilderTest extends UnitTestCase { $settings = ['fuzziness' => 'auto']; $queryParams = $queryParamBuilder->buildQueryParams($indexId, $query->reveal(), $settings); - $expected = ['index' => 'foo', 'body' => ['from' => 0, 'size' => 10]]; $this->assertEquals($expected, $queryParams); }