/** * @param \Elastica\Query $query * * @throws \InvalidArgumentException * * @return \Elastica\Query\BoolQuery */ protected function getBoolQuery(Query $query) { $boolQuery = $query->getQuery(); if (!$boolQuery instanceof BoolQuery) { throw new InvalidArgumentException(sprintf('Facet filters available only with %s, got: %s', BoolQuery::class, get_class($boolQuery))); } return $boolQuery; }
/** * @group unit */ public function testSetQueryToArrayChangeQuery() { $query = new Query(); $termQuery = new Term(); $termQuery->setTerm('text', 'value'); $query->setQuery($termQuery); $queryArray = $query->toArray(); $termQuery = $query->getQuery(); $termQuery->setTerm('text', 'another value'); $this->assertNotEquals($queryArray, $query->toArray()); }
public function testGetQuery() { $query = new Query(); try { $query->getQuery(); $this->fail('should throw exception because query does not exist'); } catch (InvalidException $e) { $this->assertTrue(true); } $termQuery = new Term(); $termQuery->setTerm('text', 'value'); $query->setQuery($termQuery); $this->assertEquals($termQuery->toArray(), $query->getQuery()); }