public function testClearExcludesForwarding() { $this->facet->addExclude('fq1'); $this->facet->addExclude('fq2'); $facetQuery = new Query(); $facetQuery->setKey('k1'); $facetQuery->setQuery('category:1'); $this->facet->addQuery($facetQuery); $this->assertEquals(array('fq1', 'fq2'), $facetQuery->getExcludes()); $this->facet->clearExcludes(); $this->assertEquals(array(), $facetQuery->getExcludes()); }
/** * Add a facet result for a multiquery facet * * @param QueryFacetMultiQuery $facet * @param array $data * @return ResultFacetMultiQuery */ protected function facetMultiQuery($facet, $data) { $values = array(); foreach ($facet->getQueries() as $query) { $key = $query->getKey(); if (isset($data['facet_counts']['facet_queries'][$key])) { $count = $data['facet_counts']['facet_queries'][$key]; $values[$key] = $count; } } if (count($values) > 0) { return new ResultFacetMultiQuery($values); } }
/** * Add params for a multiquery facet to request * * @param Request $request * @param FacetMultiQuery $facet * @return void */ public function addFacetMultiQuery($request, $facet) { foreach ($facet->getQueries() as $facetQuery) { $this->addFacetQuery($request, $facetQuery); } }