### Question:
QwantSearcher extends AbstractMultifacetSearcher<WebContent> { @Override public SearchResults<WebContent> search(MultifacetQuery query) throws SearcherException { List<WebContent> results = new ArrayList<>(); Long resultCount = null; double numChunks = Math.min(10, Math.ceil((double)query.getResultCount() / 10)); for (int start = 1; start <= numChunks; start++) { String searchUrl = createRequestUrl(query.getText(), start, Math.min(10, query.getResultCount() - results.size()), query.getLanguage()); LOGGER.debug("Search with URL " + searchUrl); HttpResult httpResult; try { httpResult = retriever.httpGet(searchUrl); } catch (HttpException e) { throw new SearcherException("HTTP exception while accessing " + getName() + " with URL \"" + searchUrl + "\": " + e.getMessage(), e); } String jsonString = httpResult.getStringContent(); if (StringUtils.isBlank(jsonString)) { throw new SearcherException("JSON response is empty."); } JsonObject responseJson; try { responseJson = new JsonObject(jsonString); checkError(responseJson); List<WebContent> current = parse(responseJson); if (current.isEmpty()) { break; } results.addAll(current); if (resultCount == null) { resultCount = parseResultCount(responseJson); } } catch (JsonException e) { throw new SearcherException("Error parsing the response from URL \"" + searchUrl + "\" (JSON was: \"" + jsonString + "\"): " + e.getMessage(), e); } } return new SearchResults<>(results, resultCount); } QwantSearcher(); @Override String getName(); @Override SearchResults<WebContent> search(MultifacetQuery query);  }### Answer:
@Test public void testSearch() throws Exception { QwantSearcher searcher = new QwantSearcher(); List<WebContent> results = searcher.search("palladian", 10, Language.ENGLISH); CollectionHelper.print(results); for (WebContent result : results) { collector.checkThat(result.getUrl().isEmpty(), is(false)); } }