/** * @dataProvider searchDataProvider * @param string $query * @param array $expectedResult * @param array $expectedIndexerCalls * @param array $expectSearchResultCalls * @param array $expectEntityRepositoryCalls * @param array $expectQueryBuilderCalls * @param array $expectExprCalls * @param array $expectQueryCalls */ public function testSearch($query, $expectedResult, $expectedIndexerCalls, $expectSearchResultCalls, $expectEntityRepositoryCalls, $expectQueryBuilderCalls, $expectExprCalls, $expectQueryCalls) { MockHelper::addMockExpectedCalls($this->indexer, $expectedIndexerCalls, $this); MockHelper::addMockExpectedCalls($this->searchResult, $expectSearchResultCalls, $this); MockHelper::addMockExpectedCalls($this->entityRepository, $expectEntityRepositoryCalls, $this); MockHelper::addMockExpectedCalls($this->queryBuilder, $expectQueryBuilderCalls, $this); MockHelper::addMockExpectedCalls($this->expr, $expectExprCalls, $this); MockHelper::addMockExpectedCalls($this->query, $expectQueryCalls, $this); $actualResult = $this->searchHandler->search($query['query'], $query['page'], $query['perPage']); $this->assertEquals($expectedResult, $actualResult); }
/** * {@inheritdoc} */ public function search($query, $page, $perPage, $searchById = false) { list($query, $targetEntity, $targetField) = explode(',', $query); $this->initForEntity($targetEntity, $targetField); return parent::search($query, $page, $perPage, $searchById); }