MediaWiki REL1_31
SearchEngineTest Class Reference

Search Database. More...

Inheritance diagram for SearchEngineTest:
Collaboration diagram for SearchEngineTest:

Public Member Functions

 addAugmentors (&$setAugmentors, &$rowAugmentors)
 
 addDBDataOnce ()
 Stub.
 
 hookSearchIndexFields ( $mockFieldBuilder, &$fields, SearchEngine $engine)
 
 provideCompletionSearchMustRespectCapitalLinkOverrides ()
 
 testAugmentorSearch ()
 
 testCompletionSearchMustRespectCapitalLinkOverrides ( $search, $expectedSuggestion, array $namespaces)
 Test that the search query is not munged using wrong CapitalLinks setup (in other test that the default search backend can benefit from wgCapitalLinksOverride) Guard against regressions like T208255 provideCompletionSearchMustRespectCapitalLinkOverrides SearchEngine::completionSearch PrefixSearch::defaultSearchBackend.
 
 testFullWidth ()
 
 testPhraseSearch ()
 
 testPhraseSearchHighlight ()
 
 testSearchIndexFields ()
 SearchEngine::getSearchIndexFields.
 
 testTextPowerSearch ()
 
 testTextSearch ()
 
 testTextTitlePowerSearch ()
 
 testTitleSearch ()
 
 testWildcardSearch ()
 
- Public Member Functions inherited from MediaWikiTestCase
 __construct ( $name=null, array $data=[], $dataName='')
 
 __destruct ()
 
 addDBData ()
 Stub.
 
 dbPrefix ()
 
 getCliArg ( $offset)
 
 hideDeprecated ( $function)
 Don't throw a warning if $function is deprecated and called later.
 
 needsDB ()
 
 run (PHPUnit_Framework_TestResult $result=null)
 
 setCliArg ( $offset, $value)
 
 setContentLang ( $lang)
 
 setGroupPermissions ( $newPerms, $newKey=null, $newValue=null)
 Alters $wgGroupPermissions for the duration of the test.
 
 setupAllTestDBs ()
 Set up all test DBs.
 
 setUserLang ( $lang)
 
 testMediaWikiTestCaseParentSetupCalled ()
 Make sure MediaWikiTestCase extending classes have called their parent setUp method.
 
 usesTemporaryTables ()
 

Protected Member Functions

 fetchIds ( $results)
 
 setUp ()
 Checks for database type & version.
 
 tearDown ()
 
- Protected Member Functions inherited from MediaWikiTestCase
 addTmpFiles ( $files)
 
 arrayWrap (array $elements)
 Utility method taking an array of elements and wrapping each element in its own array.
 
 assertArrayEquals (array $expected, array $actual, $ordered=false, $named=false)
 Assert that two arrays are equal.
 
 assertFileContains ( $fileName, $actualData, $createIfMissing=true, $msg='')
 Check whether file contains given data.
 
 assertHTMLEquals ( $expected, $actual, $msg='')
 Put each HTML element on its own line and then equals() the results.
 
 assertSelect ( $table, $fields, $condition, array $expectedRows, array $options=[], array $join_conds=[])
 Asserts that the given database query yields the rows given by $expectedRows.
 
 assertType ( $type, $actual, $message='')
 Asserts the type of the provided value.
 
 assertTypeOrValue ( $type, $actual, $value=false, $message='')
 Asserts that the provided variable is of the specified internal type or equals the $value argument.
 
 checkDbIsSupported ()
 
 checkPHPExtension ( $extName)
 Check if $extName is a loaded PHP extension, will skip the test whenever it is not loaded.
 
 getDefaultWikitextNS ()
 Returns the ID of a namespace that defaults to Wikitext.
 
 getNewTempDirectory ()
 obtains a new temporary directory
 
 getNewTempFile ()
 Obtains a new temporary file name.
 
 getSchemaOverrides (IMaintainableDatabase $db)
 Stub.
 
 insertPage ( $pageName, $text='Sample page for unit test.', $namespace=null)
 Insert a new page.
 
 isWikitextNS ( $ns)
 Returns true if the given namespace defaults to Wikitext according to $wgNamespaceContentModels.
 
 markTestSkippedIfNoDiff3 ()
 Check, if $wgDiff3 is set and ready to merge Will mark the calling test as skipped, if not ready.
 
 mergeMwGlobalArrayValue ( $name, $values)
 Merges the given values into a MW global array variable.
 
 objectAssociativeSort (array &$array)
 Does an associative sort that works for objects.
 
 overrideMwServices (Config $configOverrides=null, array $services=[])
 Stashes the global instance of MediaWikiServices, and installs a new one, allowing test cases to override settings and services.
 
 setLogger ( $channel, LoggerInterface $logger)
 Sets the logger for a specified channel, for the duration of the test.
 
 setMwGlobals ( $pairs, $value=null)
 Sets a global, maintaining a stashed version of the previous global to be restored in tearDown.
 
 setService ( $name, $object)
 Sets a service, maintaining a stashed version of the previous service to be restored in tearDown.
 
 setTemporaryHook ( $hookName, $handler)
 Create a temporary hook handler which will be reset by tearDown.
 
 stashMwGlobals ( $globalKeys)
 Stashes the global, will be restored in tearDown()
 

Protected Attributes

SearchEngine $search
 
- Protected Attributes inherited from MediaWikiTestCase
Database $db
 Primary database.
 
array $supportedDBs
 
array $tablesUsed = []
 

Additional Inherited Members

- Static Public Member Functions inherited from MediaWikiTestCase
static getMutableTestUser ( $groups=[])
 Convenience method for getting a mutable test user.
 
static getTestSysop ()
 Convenience method for getting an immutable admin test user.
 
static getTestUser ( $groups=[])
 Convenience method for getting an immutable test user.
 
static listTables (IMaintainableDatabase $db)
 
static prepareServices (Config $bootstrapConfig)
 Prepare service configuration for unit testing.
 
static setUpBeforeClass ()
 
static setupTestDB (Database $db, $prefix)
 Creates an empty skeleton of the wiki database by cloning its structure to equivalent tables using the given $prefix.
 
static teardownTestDB ()
 Restores MediaWiki to using the table set (table prefix) it was using before setupTestDB() was called.
 
static wfResetOutputBuffersBarrier ( $buffer)
 Used as a marker to prevent wfResetOutputBuffers from breaking PHPUnit.
 
- Public Attributes inherited from MediaWikiTestCase
const DB_PREFIX = 'unittest_'
 Table name prefixes.
 
const ORA_DB_PREFIX = 'ut_'
 
- Static Public Attributes inherited from MediaWikiTestCase
static TestUser[] $users
 
- Static Protected Member Functions inherited from MediaWikiTestCase
static getExternalStoreDatabaseConnections ()
 Gets master database connections for all of the ExternalStoreDB stores configured in $wgDefaultExternalStore.
 
static isUsingExternalStoreDB ()
 Check whether ExternalStoreDB is being used.
 
static resetGlobalServices (Config $bootstrapConfig=null)
 Reset global services, and install testing environment.
 
static setupDatabaseWithTestPrefix (IMaintainableDatabase $db, $prefix)
 Setups a database with the given prefix.
 
static setupExternalStoreTestDBs ( $testPrefix)
 Clones the External Store database(s) for testing.
 
static stripStringKeys (&$r)
 Utility function for eliminating all string keys from an array.
 

Detailed Description

Search Database.

SearchEngine<extended>

Note
Coverage will only ever show one of on of the Search* classes

Definition at line 10 of file SearchEngineTest.php.

Member Function Documentation

◆ addAugmentors()

SearchEngineTest::addAugmentors ( $setAugmentors,
$rowAugmentors 
)

◆ addDBDataOnce()

SearchEngineTest::addDBDataOnce ( )

Stub.

If a test suite needs to add additional data to the database, it should implement this method and do so. This method is called once per test suite (i.e. once per class).

Note data added by this method may be removed by resetDB() depending on the contents of $tablesUsed.

To add additional data between test function runs, override prepareDB().

See also
addDBData()
resetDB()
Since
1.27

Reimplemented from MediaWikiTestCase.

Definition at line 51 of file SearchEngineTest.php.

References MediaWikiTestCase\insertPage(), MediaWikiTestCase\isWikitextNS(), NS_CATEGORY, NS_MAIN, and MediaWikiTestCase\setMwGlobals().

◆ fetchIds()

SearchEngineTest::fetchIds (   $results)
protected

◆ hookSearchIndexFields()

SearchEngineTest::hookSearchIndexFields (   $mockFieldBuilder,
$fields,
SearchEngine  $engine 
)

Definition at line 323 of file SearchEngineTest.php.

References SearchIndexField\INDEX_TYPE_TEXT.

◆ provideCompletionSearchMustRespectCapitalLinkOverrides()

SearchEngineTest::provideCompletionSearchMustRespectCapitalLinkOverrides ( )

Definition at line 229 of file SearchEngineTest.php.

References NS_CATEGORY, and NS_MAIN.

◆ setUp()

SearchEngineTest::setUp ( )
protected

Checks for database type & version.

Will skip current test if DB does not support search.

Reimplemented from MediaWikiLangTestCase.

Definition at line 21 of file SearchEngineTest.php.

References NS_CATEGORY, and MediaWikiTestCase\setMwGlobals().

◆ tearDown()

SearchEngineTest::tearDown ( )
protected

Reimplemented from MediaWikiTestCase.

Definition at line 45 of file SearchEngineTest.php.

◆ testAugmentorSearch()

SearchEngineTest::testAugmentorSearch ( )

Definition at line 328 of file SearchEngineTest.php.

References MediaWikiTestCase\mergeMwGlobalArrayValue().

◆ testCompletionSearchMustRespectCapitalLinkOverrides()

SearchEngineTest::testCompletionSearchMustRespectCapitalLinkOverrides (   $search,
  $expectedSuggestion,
array  $namespaces 
)

Test that the search query is not munged using wrong CapitalLinks setup (in other test that the default search backend can benefit from wgCapitalLinksOverride) Guard against regressions like T208255 provideCompletionSearchMustRespectCapitalLinkOverrides SearchEngine::completionSearch PrefixSearch::defaultSearchBackend.

Parameters
string$search
string$expectedSuggestion
int[]$namespaces

Definition at line 260 of file SearchEngineTest.php.

References $namespaces, and $search.

◆ testFullWidth()

SearchEngineTest::testFullWidth ( )

Definition at line 114 of file SearchEngineTest.php.

References fetchIds().

◆ testPhraseSearch()

SearchEngineTest::testPhraseSearch ( )

Definition at line 166 of file SearchEngineTest.php.

References $res, and fetchIds().

◆ testPhraseSearchHighlight()

SearchEngineTest::testPhraseSearchHighlight ( )

Definition at line 186 of file SearchEngineTest.php.

References $res.

◆ testSearchIndexFields()

SearchEngineTest::testSearchIndexFields ( )

SearchEngine::getSearchIndexFields.

Definition at line 274 of file SearchEngineTest.php.

References $engine, $name, $type, SearchIndexField\INDEX_TYPE_TEXT, MediaWikiTestCase\setTemporaryHook(), and use.

◆ testTextPowerSearch()

SearchEngineTest::testTextPowerSearch ( )

Definition at line 196 of file SearchEngineTest.php.

References fetchIds().

◆ testTextSearch()

SearchEngineTest::testTextSearch ( )

Definition at line 133 of file SearchEngineTest.php.

References fetchIds().

◆ testTextTitlePowerSearch()

SearchEngineTest::testTextTitlePowerSearch ( )

Definition at line 217 of file SearchEngineTest.php.

References fetchIds().

◆ testTitleSearch()

SearchEngineTest::testTitleSearch ( )

Definition at line 207 of file SearchEngineTest.php.

References fetchIds().

◆ testWildcardSearch()

SearchEngineTest::testWildcardSearch ( )

Definition at line 140 of file SearchEngineTest.php.

References $res, and fetchIds().

Member Data Documentation

◆ $search

SearchEngine SearchEngineTest::$search
protected

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