/**
  * Tests getViewData method.
  *
  * @param DocumentIterator $documentIterator Document.
  * @param FilterState      $filterState      Filter state of ViewData class..
  *
  * @dataProvider getTestGetViewDataData
  */
 public function testGetViewData($documentIterator, $filterState)
 {
     $stc = new SingleTermChoice();
     $stc->setRequestField('choice');
     $stc->setSortType(['type' => '', 'order' => '', 'priorities' => ['country']]);
     $viewData = $stc->createViewData();
     $viewData->setName('testName');
     $viewData->setState($filterState);
     $stc->getViewData($documentIterator, $viewData);
 }
 /**
  * @return FiltersManager
  */
 protected function getFiltersManager()
 {
     $container = new FiltersContainer();
     $filter = new SingleTermChoice();
     $filter->setRequestField('c');
     $filter->setField('color');
     $filter->setSortType(['type' => '_term', 'order' => 'asc', 'priorities' => []]);
     $container->set('color', $filter);
     $filter = new SingleTermChoice();
     $filter->setRequestField('m');
     $filter->setField('manufacturer');
     $filter->setSortType(['type' => '_term', 'order' => 'asc', 'priorities' => []]);
     $container->set('manufacturer', $filter);
     return new FiltersManager($container, $this->getManager()->getRepository('AcmeTestBundle:Product'));
 }
 /**
  * {@inheritdoc}
  */
 public function getState(Request $request)
 {
     $value = $request->get($this->getRequestField());
     if (isset($value) && $value !== '' && !is_array($value)) {
         $request->query->set($this->getRequestField(), [$value]);
     }
     return parent::getState($request);
 }