MediaWiki  1.33.0
MediaWiki\Tests\Maintenance\DumpTestCase Class Reference

Base TestCase for dumps. More...

Inheritance diagram for MediaWiki\Tests\Maintenance\DumpTestCase:
Collaboration diagram for MediaWiki\Tests\Maintenance\DumpTestCase:

Public Member Functions

 expectETAOutput ()
 Checks for test output consisting only of lines containing ETA announcements. More...
 
- Public Member Functions inherited from MediaWikiTestCase
 __construct ( $name=null, array $data=[], $dataName='')
 
 __destruct ()
 
 addDBData ()
 Stub. More...
 
 addDBDataOnce ()
 Stub. More...
 
 copyTestData (IDatabase $source, IDatabase $target)
 Copy test data from one database connection to another. More...
 
 dbPrefix ()
 
 getCliArg ( $offset)
 
 hideDeprecated ( $function)
 Don't throw a warning if $function is deprecated and called later. More...
 
 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. More...
 
 setupAllTestDBs ()
 Set up all test DBs. More...
 
 setUserLang ( $lang)
 
 testMediaWikiTestCaseParentSetupCalled ()
 Make sure MediaWikiTestCase extending classes have called their parent setUp method. More...
 
 usesTemporaryTables ()
 

Static Public Member Functions

static setUpBeforeClass ()
 
- Static Public Member Functions inherited from MediaWikiTestCase
static getMutableTestUser ( $groups=[])
 Convenience method for getting a mutable test user. More...
 
static getTestPrefixFor (IDatabase $db)
 
static getTestSysop ()
 Convenience method for getting an immutable admin test user. More...
 
static getTestUser ( $groups=[])
 Convenience method for getting an immutable test user. More...
 
static installMockMwServices (Config $configOverrides=null)
 Creates a new "mock" MediaWikiServices instance, and installs it. More...
 
static listTables (IMaintainableDatabase $db)
 
static prepareServices (Config $bootstrapConfig)
 
static resetNonServiceCaches ()
 Resets some non-service singleton instances and other static caches. More...
 
static restoreMwServices ()
 Restores the original, non-mock MediaWikiServices instance. More...
 
static setupTestDB (IMaintainableDatabase $db, $prefix)
 Creates an empty skeleton of the wiki database by cloning its structure to equivalent tables using the given $prefix. More...
 
static teardownTestDB ()
 Restores MediaWiki to using the table set (table prefix) it was using before setupTestDB() was called. More...
 
static wfResetOutputBuffersBarrier ( $buffer)
 Used as a marker to prevent wfResetOutputBuffers from breaking PHPUnit. More...
 

Protected Member Functions

 addRevision (WikiPage $page, $text, $summary, $model=CONTENT_MODEL_WIKITEXT)
 Adds a revision to a page, while returning the resuting revision's id. More...
 
 assertDumpSchema ( $fname, $schemaFile)
 Checks an XML file against an XSD schema. More...
 
 checkHasGzip ()
 Skip the test if 'gzip' is not in $PATH. More...
 
 getDumpAsserter ( $schemaVersion=null)
 
 getXmlSchemaPath ( $schemaVersion=null)
 Returns the path to the XML schema file for the given schema version. More...
 
 gunzip ( $fname)
 gunzips the given file and stores the result in the original file name More...
 
 setUp ()
 Default set up function. More...
 
- Protected Member Functions inherited from MediaWikiTestCase
 addCoreDBData ()
 
 addTmpFiles ( $files)
 
 arrayWrap (array $elements)
 Utility method taking an array of elements and wrapping each element in its own array. More...
 
 assertArrayEquals (array $expected, array $actual, $ordered=false, $named=false)
 Assert that two arrays are equal. More...
 
 assertFileContains ( $fileName, $actualData, $createIfMissing=false, $msg='')
 Check whether file contains given data. More...
 
 assertHTMLEquals ( $expected, $actual, $msg='')
 Put each HTML element on its own line and then equals() the results. More...
 
 assertSelect ( $table, $fields, $condition, array $expectedRows, array $options=[], array $join_conds=[])
 Asserts that the given database query yields the rows given by $expectedRows. More...
 
 assertType ( $type, $actual, $message='')
 Asserts the type of the provided value. More...
 
 assertTypeOrValue ( $type, $actual, $value=false, $message='')
 Asserts that the provided variable is of the specified internal type or equals the $value argument. More...
 
 checkDbIsSupported ()
 
 checkPHPExtension ( $extName)
 Check if $extName is a loaded PHP extension, will skip the test whenever it is not loaded. More...
 
 editPage ( $pageName, $text, $summary='', $defaultNs=NS_MAIN)
 Edits or creates a page/revision. More...
 
 ensureMockDatabaseConnection (IDatabase $db)
 
 getDefaultWikitextNS ()
 Returns the ID of a namespace that defaults to Wikitext. More...
 
 getExistingTestPage ( $title=null)
 Returns a WikiPage representing an existing page. More...
 
 getNewTempDirectory ()
 obtains a new temporary directory More...
 
 getNewTempFile ()
 Obtains a new temporary file name. More...
 
 getNonexistingTestPage ( $title=null)
 Returns a WikiPage representing a non-existing page. More...
 
 getSchemaOverrides (IMaintainableDatabase $db)
 Stub. More...
 
 insertPage ( $pageName, $text='Sample page for unit test.', $namespace=null, User $user=null)
 Insert a new page. More...
 
 isTestInDatabaseGroup ()
 
 isWikitextNS ( $ns)
 Returns true if the given namespace defaults to Wikitext according to $wgNamespaceContentModels. More...
 
 markTestSkippedIfDbType ( $type)
 Skip the test if using the specified database type. More...
 
 markTestSkippedIfNoDiff3 ()
 Check, if $wgDiff3 is set and ready to merge Will mark the calling test as skipped, if not ready. More...
 
 mergeMwGlobalArrayValue ( $name, $values)
 Merges the given values into a MW global array variable. More...
 
 objectAssociativeSort (array &$array)
 Does an associative sort that works for objects. More...
 
 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. More...
 
 revisionDelete ( $rev, array $value=[Revision::DELETED_TEXT=> 1], $comment='')
 Revision-deletes a revision. More...
 
 setIniSetting ( $name, $value)
 Set an ini setting for the duration of the test. More...
 
 setLogger ( $channel, LoggerInterface $logger)
 Sets the logger for a specified channel, for the duration of the test. More...
 
 setMwGlobals ( $pairs, $value=null)
 Sets a global, maintaining a stashed version of the previous global to be restored in tearDown. More...
 
 setService ( $name, $object)
 Sets a service, maintaining a stashed version of the previous service to be restored in tearDown. More...
 
 setTemporaryHook ( $hookName, $handler)
 Create a temporary hook handler which will be reset by tearDown. More...
 
 stashMwGlobals ( $globalKeys)
 Stashes the global, will be restored in tearDown() More...
 
 tearDown ()
 
 truncateTable ( $tableName, IDatabase $db=null)
 Empties the given table and resets any auto-increment counters. More...
 

Protected Attributes

Exception null $exceptionFromAddDBData = null
 exception to be rethrown once in sound PHPUnit surrounding More...
 
- Protected Attributes inherited from MediaWikiTestCase
Database $db
 Primary database. More...
 
array $supportedDBs
 
array $tablesUsed = []
 

Static Protected Attributes

static bool null $hasGzip = null
 Whether the 'gzip' utility is available. More...
 

Additional Inherited Members

- Public Attributes inherited from MediaWikiTestCase
const DB_PREFIX = 'unittest_'
 Table name prefixes. More...
 
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. More...
 
static isUsingExternalStoreDB ()
 Check whether ExternalStoreDB is being used. More...
 
static setupDatabaseWithTestPrefix (IMaintainableDatabase $db, $prefix=null)
 Setups a database with cloned tables using the given prefix. More...
 
static setupExternalStoreTestDBs ( $testPrefix=null)
 Clones the External Store database(s) for testing. More...
 
static stripStringKeys (&$r)
 Utility function for eliminating all string keys from an array. More...
 

Detailed Description

Base TestCase for dumps.

Definition at line 17 of file DumpTestCase.php.

Member Function Documentation

◆ addRevision()

MediaWiki\Tests\Maintenance\DumpTestCase::addRevision ( WikiPage  $page,
  $text,
  $summary,
  $model = CONTENT_MODEL_WIKITEXT 
)
protected

Adds a revision to a page, while returning the resuting revision's id.

Parameters
WikiPage$pagePage to add the revision to
string$textRevisions text
string$summaryRevisions summary
string$modelThe model ID (defaults to wikitext)
Exceptions
MWException
Returns
array

Definition at line 63 of file DumpTestCase.php.

References $value, WikiPage\doEditContent(), MediaWikiTestCase\getTestUser(), WikiPage\getTitle(), and ContentHandler\makeContent().

Referenced by MediaWiki\Tests\Maintenance\TextPassDumperDatabaseTest\addDBData(), and MediaWiki\Tests\Maintenance\BackupDumperPageTest\addDBData().

◆ assertDumpSchema()

◆ checkHasGzip()

◆ expectETAOutput()

MediaWiki\Tests\Maintenance\DumpTestCase::expectETAOutput ( )

Checks for test output consisting only of lines containing ETA announcements.

Definition at line 175 of file DumpTestCase.php.

References $line, $lines, as, and captcha-old\count.

Referenced by MediaWiki\Tests\Maintenance\TextPassDumperDatabaseTest\checkpointHelper(), and MediaWiki\Tests\Maintenance\BackupDumperPageTest\testXmlDumpsBackupUseCase().

◆ getDumpAsserter()

◆ getXmlSchemaPath()

◆ gunzip()

MediaWiki\Tests\Maintenance\DumpTestCase::gunzip (   $fname)
protected

gunzips the given file and stores the result in the original file name

Parameters
string$fnameFilename to read the gzipped data from and stored the gunzipped data into

Definition at line 95 of file DumpTestCase.php.

References $fname.

Referenced by MediaWiki\Tests\Maintenance\TextPassDumperDatabaseTest\checkpointHelper(), MediaWiki\Tests\Maintenance\BackupDumperPageTest\testCurrentStubGzip(), MediaWiki\Tests\Maintenance\BackupDumperPageTest\testXmlDumpsBackupUseCase(), and MediaWiki\Tests\Maintenance\BackupDumperLoggerTest\testXmlDumpsBackupUseCaseLogging().

◆ setUp()

MediaWiki\Tests\Maintenance\DumpTestCase::setUp ( )
protected

Default set up function.

Clears $wgUser, and reports errors from addDBData to PHPUnit

Reimplemented from MediaWikiLangTestCase.

Reimplemented in MediaWiki\Tests\Maintenance\TextPassDumperDatabaseTest, and MediaWiki\Tests\Maintenance\BackupDumperPageTest.

Definition at line 145 of file DumpTestCase.php.

References MediaWiki\Tests\Maintenance\DumpTestCase\$exceptionFromAddDBData, MediaWikiTestCase\setMwGlobals(), and User.

◆ setUpBeforeClass()

static MediaWiki\Tests\Maintenance\DumpTestCase::setUpBeforeClass ( )
static

Reimplemented from MediaWikiTestCase.

Definition at line 110 of file DumpTestCase.php.

References MediaWiki\$context, and $file.

Member Data Documentation

◆ $exceptionFromAddDBData

Exception null MediaWiki\Tests\Maintenance\DumpTestCase::$exceptionFromAddDBData = null
protected

exception to be rethrown once in sound PHPUnit surrounding

As the current MediaWikiTestCase::run is not robust enough to recover from thrown exceptions directly, we cannot throw frow within self::addDBData, although it would be appropriate. Hence, we catch the exception and store it until we are in setUp and may finally rethrow the exception without crashing the test suite.

Definition at line 30 of file DumpTestCase.php.

Referenced by MediaWiki\Tests\Maintenance\DumpTestCase\setUp().

◆ $hasGzip

bool null MediaWiki\Tests\Maintenance\DumpTestCase::$hasGzip = null
staticprotected

Whether the 'gzip' utility is available.

Definition at line 33 of file DumpTestCase.php.

Referenced by MediaWiki\Tests\Maintenance\DumpTestCase\checkHasGzip().


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