MediaWiki REL1_32
MockCompletionSearchEngine Class Reference

SearchEngine implementation for returning mocked completion search results. More...

Inheritance diagram for MockCompletionSearchEngine:
Collaboration diagram for MockCompletionSearchEngine:

Public Member Functions

 completionSearchBackend ( $search)
 Perform a completion search.
 
- Public Member Functions inherited from SearchEngine
 augmentSearchResults (SearchResultSet $resultSet)
 Augment search results with extra data.
 
 completionSearch ( $search)
 Perform a completion search.
 
 completionSearchWithVariants ( $search)
 Perform a completion search with variants.
 
 defaultPrefixSearch ( $search)
 Simple prefix search for subpages.
 
 delete ( $id, $title)
 Delete an indexed page Title should be pre-processed.
 
 extractTitles (SearchSuggestionSet $completionResults)
 Extract titles from completion results.
 
 getFeatureData ( $feature)
 Way to retrieve custom data set by setFeatureData or by the engine itself.
 
 getNearMatcher (Config $config)
 Get service class to finding near matches.
 
 getProfiles ( $profileType, User $user=null)
 Get a list of supported profiles.
 
 getSearchIndexFields ()
 Get fields for search index.
 
 getSort ()
 Get the sort direction of the search results.
 
 getTextFromContent (Title $t, Content $c=null)
 Get the raw text for updating the index from a content object Nicer search backends could possibly do something cooler than just returning raw text.
 
 getValidSorts ()
 Get the valid sort directions.
 
 makeSearchFieldMapping ( $name, $type)
 Create a search field definition.
 
 normalizeText ( $string)
 When overridden in derived class, performs database-specific conversions on text to be used for searching or updating search index.
 
 replacePrefixes ( $query)
 Parse some common prefixes: all (search everything) or namespace names and set the list of namespaces of this class accordingly.
 
 searchArchiveTitle ( $term)
 Perform a title search in the article archive.
 
 searchText ( $term)
 Perform a full text search query and return a result set.
 
 searchTitle ( $term)
 Perform a title-only search query and return a result set.
 
 setFeatureData ( $feature, $data)
 Way to pass custom data for engines.
 
 setLimitOffset ( $limit, $offset=0)
 Set the maximum number of results to return and how many to skip before returning the first.
 
 setNamespaces ( $namespaces)
 Set which namespaces the search should include.
 
 setShowSuggestion ( $showSuggestion)
 Set whether the searcher should try to build a suggestion.
 
 setSort ( $sort)
 Set the sort direction of the search results.
 
 supports ( $feature)
 
 textAlreadyUpdatedForIndex ()
 If an implementation of SearchEngine handles all of its own text processing in getTextFromContent() and doesn't require SearchUpdate::updateText()'s rather silly handling, it should return true here instead.
 
 transformSearchTerm ( $term)
 Transform search term in cases when parts of the query came as different GET params (when supported), e.g.
 
 update ( $id, $title, $text)
 Create or update the search index record for the given page.
 
 updateTitle ( $id, $title)
 Update a search index record's title only.
 

Static Public Member Functions

static addMockResults ( $query, array $result)
 Allows returning arbitrary lists of titles for completion search.
 
static clearMockResults ()
 Reset any mocked results.
 
- Static Public Member Functions inherited from SearchEngine
static create ( $type=null)
 Load up the appropriate search engine class for the currently active database backend, and return a configured instance.
 
static defaultNamespaces ()
 An array of namespaces indexes to be searched by default.
 
static getNearMatch ( $searchterm)
 If an exact title match can be found, or a very slightly close match, return the title.
 
static getNearMatchResultSet ( $searchterm)
 Do a near match (see SearchEngine::getNearMatch) and wrap it into a SearchResultSet.
 
static getSearchTypes ()
 Return the search engines we support.
 
static legalSearchChars ( $type=self::CHARS_ALL)
 Get chars legal for search NOTE: usage as static is deprecated and preserved only as BC measure.
 
static namespacesAsText ( $namespaces)
 Get a list of namespace names useful for showing in tooltips and preferences.
 
static parseNamespacePrefixes ( $query, $withAllKeyword=true, $withPrefixSearchExtractNamespaceHook=false)
 Parse some common prefixes: all (search everything) or namespace names.
 
static searchableNamespaces ()
 Make a list of searchable namespaces and their canonical names.
 
static userHighlightPrefs ()
 Find snippet highlight settings for all users.
 
static userNamespaces ( $user)
 Extract default namespaces to search from the given user's settings, returning a list of index numbers.
 

Static Private Attributes

static string[][] $results = []
 

Additional Inherited Members

- Public Attributes inherited from SearchEngine
int[] null $namespaces = [ NS_MAIN ]
 
string $prefix = ''
 
const CHARS_ALL = 1
 @const int flag for legalSearchChars: includes all chars allowed in a search query
 
const CHARS_NO_SYNTAX = 2
 @const int flag for legalSearchChars: includes all chars allowed in a search term
 
const COMPLETION_PROFILE_TYPE = 'completionSearchProfile'
 @const string profile type for completionSearch
 
const DEFAULT_SORT = 'relevance'
 
const FT_QUERY_INDEP_PROFILE_TYPE = 'fulltextQueryIndepProfile'
 @const string profile type for query independent ranking features
 
- Protected Member Functions inherited from SearchEngine
 completionSearchBackendOverfetch ( $search)
 Perform an overfetch of completion search results.
 
 doSearchArchiveTitle ( $term)
 Perform a title search in the article archive.
 
 doSearchText ( $term)
 Perform a full text search query and return a result set.
 
 doSearchTitle ( $term)
 Perform a title-only search query and return a result set.
 
 normalizeNamespaces ( $search)
 Makes search simple string if it was namespaced.
 
 processCompletionResults ( $search, SearchSuggestionSet $suggestions)
 Process completion search results.
 
 simplePrefixSearch ( $search)
 Call out to simple search backend.
 
- Static Protected Member Functions inherited from SearchEngine
static defaultNearMatcher ()
 Get near matcher for default SearchEngine.
 
- Protected Attributes inherited from SearchEngine
array $features = []
 Feature values.
 
int $limit = 10
 
int $offset = 0
 
array string $searchTerms = []
 
bool $showSuggestion = true
 

Detailed Description

SearchEngine implementation for returning mocked completion search results.

Definition at line 6 of file MockCompletionSearchEngine.php.

Member Function Documentation

◆ addMockResults()

static MockCompletionSearchEngine::addMockResults ( $query,
array $result )
static

Allows returning arbitrary lists of titles for completion search.

Provided results will be sliced based on offset/limit of query.

For results to exit the search engine they must pass Title::isKnown. Injecting into link cache is not enough, as LinkBatch will mark them bad, they need to be injected into the DB.

Parameters
string$querySearch term as seen in completionSearchBackend
string[]$resultList of titles to respond to query with

Definition at line 28 of file MockCompletionSearchEngine.php.

References $result.

Referenced by ApiQueryPrefixSearchTest\setUp(), and SearchEngineTest\testFiltersMissing().

◆ clearMockResults()

static MockCompletionSearchEngine::clearMockResults ( )
static

Reset any mocked results.

Definition at line 13 of file MockCompletionSearchEngine.php.

Referenced by ApiQueryPrefixSearchTest\setUp().

◆ completionSearchBackend()

MockCompletionSearchEngine::completionSearchBackend ( $search)

Perform a completion search.

Does not resolve namespaces and does not check variants. Search engine implementations may want to override this function.

Parameters
string$search
Returns
SearchSuggestionSet

Reimplemented from SearchEngine.

Definition at line 34 of file MockCompletionSearchEngine.php.

References $results, SearchSuggestionSet\emptySuggestionSet(), and SearchSuggestionSet\fromStrings().

Member Data Documentation

◆ $results

string [][] MockCompletionSearchEngine::$results = []
staticprivate

Definition at line 8 of file MockCompletionSearchEngine.php.

Referenced by completionSearchBackend().


The documentation for this class was generated from the following file: