Example #1
0
 public function testUniqueFacet()
 {
     $criteria = new Criteria();
     $criteria->addFacet(new PriceFacet());
     $criteria->addFacet(new PriceFacet());
     $this->assertCount(1, $criteria->getFacets());
 }
 /**
  * @param SearchBundle\Criteria $criteria
  * @param ShopContextInterface $context
  * @return SearchBundle\FacetResultInterface[]
  * @throws \Exception
  */
 private function createFacets(SearchBundle\Criteria $criteria, ShopContextInterface $context)
 {
     $facets = [];
     foreach ($criteria->getFacets() as $facet) {
         $handler = $this->getFacetHandler($facet);
         $result = $handler->generateFacet($facet, $criteria, $context);
         if (!$result) {
             continue;
         }
         if (!is_array($result)) {
             $result = [$result];
         }
         $facets = array_merge($facets, $result);
     }
     return $facets;
 }