/** * Tests preProcessSearch method. */ public function testPreProcessSearch() { $mockFilterState = $this->getMockBuilder('ONGR\\FilterManagerBundle\\Filters\\FilterState')->getMock(); $mockFilterState->expects($this->exactly(2))->method('getName')->will($this->returnValue('name')); $mockSearch = $this->getMockBuilder('ONGR\\ElasticsearchBundle\\DSL\\Search')->getMock(); $mockSearch->expects($this->at(0))->method('addAggregation')->with($this->isInstanceOf('ONGR\\ElasticsearchBundle\\DSL\\Aggregation\\FilterAggregation')); $mockSearch->expects($this->at(1))->method('addAggregation')->with($this->isInstanceOf('ONGR\\ElasticsearchBundle\\DSL\\Aggregation\\TermsAggregation')); $mockSearch->expects($this->exactly(2))->method('addAggregation'); $mockRelatedSearch = $this->getMockBuilder('ONGR\\ElasticsearchBundle\\DSL\\Search')->getMock(); $mockRelatedSearch->expects($this->exactly(2))->method('getPostFilters')->will($this->returnValue($this->getMockBuilder('ONGR\\ElasticsearchBundle\\DSL\\BuilderInterface')->getMock())); $stc = new SingleTermChoice(); $stc->preProcessSearch($mockSearch, $mockRelatedSearch, $mockFilterState); $mockRelatedSearch = $this->getMockBuilder('ONGR\\ElasticsearchBundle\\DSL\\Search')->getMock(); $mockRelatedSearch->expects($this->once())->method('getPostFilters')->will($this->returnValue(null)); $stc->setSortType(['type' => '', 'order' => '']); $stc->preProcessSearch($mockSearch, $mockRelatedSearch, $mockFilterState); }