/** * Data provider for testIteration. * * @return array */ public function getIterationData() { $out = []; // Case #0: no search type set, with a sort, results should be sorted. $search = new Search(); $search->setSize(2); $search->setScroll('1m'); $search->addSort(new FieldSort('price')); $search->addQuery(new MatchAllQuery()); $out[] = ['search' => $search, true]; // Case #1: search type set to scan, with a sort, results should not be sorted. $search = new Search(); $search->setSize(2); $search->setScroll('1m'); $search->setSearchType('scan'); $search->addSort(new FieldSort('price')); $search->addQuery(new MatchAllQuery()); $out[] = ['search' => $search, false]; // Case #3: minimum size, should give the same results. $search = new Search(); $search->setSize(1); $search->setScroll('1m'); $search->addSort(new FieldSort('price')); $search->addQuery(new MatchAllQuery()); $out[] = ['search' => $search, true]; return $out; }
/** * Data provider for test testSettingQueryParams() * * @return array */ public function getTestSettingQueryParamsData() { $cases = []; $search = new Search(); $search->setSearchType('dfs_query_then_fetch'); $cases['Only search_type is set'] = [$search, ['search_type' => 'dfs_query_then_fetch']]; $search = new Search(); $search->setRequestCache(true); $cases['Only request_cache is set'] = [$search, ['request_cache' => true]]; $search = new Search(); $search->setScroll('1m'); $cases['Only scroll is set'] = [$search, ['scroll' => '1m']]; $search = new Search(); $search->setPreference('_local'); $cases['Only preference is set'] = [$search, ['preference' => '_local']]; $search = new Search(); $search->setSearchType('dfs_query_then_fetch'); $search->setRequestCache(true); $search->setScroll('1m'); $search->setPreference('_local'); $cases['Multiple parameters are set'] = [$search, ['search_type' => 'dfs_query_then_fetch', 'request_cache' => true, 'scroll' => '1m', 'preference' => '_local']]; return $cases; }