/**
  * @param FinderConfiguration $configuration
  *
  * @return array|null
  */
 protected function generatePreSearchFilter(FinderConfiguration $configuration)
 {
     $filter = null;
     $descriptionEntity = $configuration->getDescriptionEntity();
     $filtersColumn = $this->getFilterSearchColumn($configuration->getSearchIndex('prefilters'), $descriptionEntity);
     if (!empty($filtersColumn)) {
         $filter = array('$and' => $filtersColumn);
     }
     return $filter;
 }
 /**
  * @param array  $descriptionEntity
  * @param array  $search
  * @param int    $count
  *
  * @dataProvider provideColumnsAndSearchAndCount
  */
 public function testCountWithFilter($descriptionEntity, $search, $count)
 {
     $this->markTestSkipped('To unskip when group list is refacto');
     $configuration = FinderConfiguration::generateFromVariable($descriptionEntity, $search);
     $groups = $this->repository->countWithFilter($configuration);
     $this->assertEquals($count, $groups);
 }
 /**
  * @param array  $descriptionEntity
  * @param array  $search
  * @param int    $count
  *
  * @dataProvider provideColumnsAndSearchAndCount
  */
 public function testCountWithFilter($descriptionEntity, $search, $count)
 {
     $configuration = FinderConfiguration::generateFromVariable($descriptionEntity, $search);
     $worflowFunctions = $this->repository->countWithFilter($configuration);
     $this->assertEquals($count, $worflowFunctions);
 }
 /**
  * @param boolean $deleted
  * @param array   $descriptionEntity
  * @param array   $search
  * @param int     $count
  *
  * @dataProvider provideColumnsAndSearchAndCount
  */
 public function testCountWithSearchFilterByDeleted($deleted, $descriptionEntity, $search, $count)
 {
     $configuration = FinderConfiguration::generateFromVariable($descriptionEntity, $search);
     $sites = $this->repository->countWithSearchFilterByDeleted($deleted, $configuration);
     $this->assertEquals($count, $sites);
 }
 /**
  * @param string  $contentType
  * @param array   $descriptionEntity
  * @param string  $search
  * @param string  $siteId
  * @param int     $count
  *
  * @dataProvider provideColumnsAndSearchAndCount
  */
 public function testCountByContentTypeInLastVersionWithSearchFilter($contentType, $descriptionEntity, $search, $siteId, $count)
 {
     $this->markTestSkipped('To unskip when group list is refacto');
     $configuration = FinderConfiguration::generateFromVariable($descriptionEntity, $search);
     $contents = $this->repository->countByContentTypeInLastVersionWithFilter($contentType, $configuration, $siteId);
     $this->assertEquals($count, $contents);
 }