### Question:
SolrManager extends BaseSearchManager implements Initializable { @Override public ComponentSearchWrapper search(SearchQuery searchQuery, FilterQueryParams filter) { ComponentSearchWrapper componentSearchWrapper = new ComponentSearchWrapper(); IndexSearchResult indexSearchResult = doIndexSearch(searchQuery.getQuery(), filter); List<SolrComponentModel> resultsList = indexSearchResult.getResultsList(); long totalFound = indexSearchResult.getTotalResults(); List<ComponentSearchView> views = new ArrayList<>(); List<String> componentIds = new ArrayList<>(); for (SolrComponentModel result : resultsList) { if (result.getIsComponent()) { componentIds.add(result.getId()); } } List<ComponentSearchView> componentSearchViews = service.getComponentService().getSearchComponentList(componentIds); Set<String> goodComponentIdSet = new HashSet<>(); for (ComponentSearchView view : componentSearchViews) { goodComponentIdSet.add(view.getComponentId()); } for (String componentId : componentIds) { if (goodComponentIdSet.contains(componentId) == false) { LOG.log(Level.FINE, () -> "Removing bad index: " + componentId); deleteById(componentId); totalFound--; } } updateSearchScore(searchQuery.getQuery(), componentSearchViews); views.addAll(componentSearchViews); componentSearchWrapper.setData(views); componentSearchWrapper.setResults(views.size()); if (totalFound < 0) { totalFound = 0; } componentSearchWrapper.setTotalNumber(totalFound); return componentSearchWrapper; } protected  SolrManager(PropertiesManager propManager, SolrClient client); static SolrManager getInstance(); static SolrManager getInstance(PropertiesManager propertiesManager, SolrClient client); void init(); void cleanup(); SolrClient getServer(); @Override void initialize(); @Override void shutdown(); @Override boolean isStarted(); @Override ComponentSearchWrapper search(SearchQuery searchQuery, FilterQueryParams filter); @Override void index(List<Component> components); @Override IndexSearchResult doIndexSearch(String query, FilterQueryParams filter); @Override IndexSearchResult doIndexSearch(String query, FilterQueryParams filter, String[] addtionalFieldsToReturn); @Override List<SearchSuggestion> searchSuggestions(String query, int maxResult, String componentType); @Override void deleteById(String id); @Override void deleteAll(); @Override void saveAll(); @Override void resetIndexer(); static final String SOLR_ALL_QUERY; static final String SOLR_QUERY_SEPERATOR; }### Answer:
@Test public void testSearch() { }