MediaWiki  1.23.14
TextPassDumperTest Class Reference

Tests for page dumps of BackupDumper. More...

Inheritance diagram for TextPassDumperTest:
Collaboration diagram for TextPassDumperTest:

Public Member Functions

 addDBData ()
 Stub. More...
 
 testCheckpointGzip ()
 tests for working checkpoint generation in gzip format work. More...
 
 testCheckpointPlain ()
 @group large More...
 
 testPlain ()
 
 testPrefetchPlain ()
 
- Public Member Functions inherited from DumpTestCase
 expectETAOutput ()
 Checks for test output consisting only of lines containing ETA announcements. More...
 
- Public Member Functions inherited from MediaWikiTestCase
 __call ( $func, $args)
 
 __construct ( $name=null, array $data=array(), $dataName='')
 
 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)
 
 testMediaWikiTestCaseParentSetupCalled ()
 Make sure MediaWikiTestCase extending classes have called their parent setUp method. More...
 
 usesTemporaryTables ()
 

Public Attributes

 $pageId2
 
 $pageId3
 
 $pageId4
 
 $revId2_2
 
 $revId2_4
 
 $revId3_2
 
 $textId1_1
 
 $textId2_1
 
 $textId2_2
 
 $textId2_3
 
 $textId2_4
 
 $textId3_1
 
 $textId3_2
 
 $textId4_1
 
- Public Attributes inherited from MediaWikiTestCase
const DB_PREFIX = 'unittest_'
 Table name prefixes. More...
 
const ORA_DB_PREFIX = 'ut_'
 

Protected Member Functions

 setUp ()
 Default set up function. More...
 
- Protected Member Functions inherited from DumpTestCase
 addRevision (Page $page, $text, $summary)
 Adds a revision to a page, while returning the resuting revision's id. More...
 
 assertDumpEnd ( $name="mediawiki")
 Asserts that the xml reader is at the final closing tag of an xml file and closes the reader. More...
 
 assertDumpStart ( $fname, $skip_siteinfo=true)
 Opens an XML file to analyze and optionally skips past siteinfo. More...
 
 assertNodeEnd ( $name, $skip=true)
 Asserts that the xml reader is at an closing element of given name, and optionally skips past it. More...
 
 assertNodeStart ( $name, $skip=true)
 Asserts that the xml reader is at an element of given name, and optionally skips past it. More...
 
 assertPageEnd ()
 Asserts that the xml reader is at the page's closing element and skips to the next element. More...
 
 assertPageStart ( $id, $ns, $name)
 Asserts that the xml reader is at the start of a page element and skips over the first tags, after checking them. More...
 
 assertRevision ( $id, $summary, $text_id, $text_bytes, $text_sha1, $text=false, $parentid=false, $model=CONTENT_MODEL_WIKITEXT, $format=CONTENT_FORMAT_WIKITEXT)
 Asserts that the xml reader is at a revision and checks its representation before skipping over it. More...
 
 assertText ( $id, $text_id, $text_bytes, $text)
 
 assertTextNode ( $name, $text, $skip_ws=true)
 Asserts that the xml reader is at an element of given tag that contains a given text, and skips over the element. More...
 
 gunzip ( $fname)
 gunzips the given file and stores the result in the original file name More...
 
 skipPastNodeEnd ( $name)
 Step the current XML reader to the first element start after the node end of a given name. More...
 
 skipToNodeEnd ( $name)
 Step the current XML reader until node end of given name is found. More...
 
 skipWhitespace ()
 Steps the xml reader over white space. More...
 
- Protected Member Functions inherited from MediaWikiTestCase
 arrayWrap (array $elements)
 Utility method taking an array of elements and wrapping each element in it's own array. More...
 
 assertArrayEquals (array $expected, array $actual, $ordered=false, $named=false)
 Assert that two arrays are equal. More...
 
 assertException ( $code, $expected='Exception', $message='')
 Asserts that an exception of the specified type occurs when running the provided code. 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)
 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...
 
 assertValidHtmlDocument ( $html)
 Asserts that the given string is valid HTML document. More...
 
 assertValidHtmlSnippet ( $html)
 Asserts that the given string is a valid HTML snippet. More...
 
 checkDbIsSupported ()
 
 checkHasDiff3 ()
 Check, if $wgDiff3 is set and ready to merge Will mark the calling test as skipped, if not ready. More...
 
 checkHasGzip ()
 Check whether we have the 'gzip' commandline utility, will skip the test whenever "gzip -V" fails. More...
 
 checkPHPExtension ( $extName)
 Check if $extName is a loaded PHP extension, will skip the test whenever it is not loaded. More...
 
 getDefaultWikitextNS ()
 Returns the ID of a namespace that defaults to Wikitext. More...
 
 getNewTempDirectory ()
 obtains a new temporary directory More...
 
 getNewTempFile ()
 Obtains a new temporary file name. More...
 
 isWikitextNS ( $ns)
 Returns true if the given namespace defaults to Wikitext according to $wgNamespaceContentModels. 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...
 
 setMwGlobals ( $pairs, $value=null)
 
 stashMwGlobals ( $globalKeys)
 Stashes the global, will be restored in tearDown() More...
 
 tearDown ()
 

Private Member Functions

 checkpointHelper ( $checkpointFormat="file")
 Ensures that checkpoint dumps are used and written, by successively increasing the stub size and dumping until the duration crosses a threshold. More...
 
 setUpStub ( $fname=null, $iterations=1)
 Creates a stub file that is used for testing the text pass of dumps. More...
 

Private Attributes

 $pageId1
 
 $revId1_1
 
 $revId2_1
 
 $revId2_3
 
 $revId3_1
 
 $revId4_1
 

Static Private Attributes

static $numOfPages = 4
 
static $numOfRevs = 8
 

Additional Inherited Members

- Static Public Member Functions inherited from MediaWikiTestCase
static listTables ( $db)
 
static setupTestDB (DatabaseBase $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 Public Attributes inherited from MediaWikiTestCase
static $users
 
- Static Protected Member Functions inherited from MediaWikiTestCase
static stripStringKeys (&$r)
 Utility function for eliminating all string keys from an array. More...
 
- Protected Attributes inherited from DumpTestCase
Exception null $exceptionFromAddDBData = null
 exception to be rethrown once in sound PHPUnit surrounding More...
 
XMLReader null $xml = null
 Holds the xmlreader used for analyzing an xml dump. More...
 
- Protected Attributes inherited from MediaWikiTestCase
DatabaseBase $db
 
array $supportedDBs
 
array $tablesUsed = array()
 

Detailed Description

Tests for page dumps of BackupDumper.

@group Database @group Dump @covers TextPassDumper

Definition at line 12 of file backupTextPassTest.php.

Member Function Documentation

◆ addDBData()

TextPassDumperTest::addDBData ( )

Stub.

If a test needs to add additional data to the database, it should implement this method and do so

Since
1.18

Reimplemented from MediaWikiTestCase.

Definition at line 25 of file backupTextPassTest.php.

References $e, $title, DumpTestCase\addRevision(), WikiPage\factory(), MediaWikiTestCase\getDefaultWikitextNS(), list, Title\newFromText(), and NS_TALK.

◆ checkpointHelper()

TextPassDumperTest::checkpointHelper (   $checkpointFormat = "file")
private

Ensures that checkpoint dumps are used and written, by successively increasing the stub size and dumping until the duration crosses a threshold.

Parameters
$checkpointFormatstring: Either "file" for plain text or "gzip" for gzipped checkpoint files.

Definition at line 225 of file backupTextPassTest.php.

References $dumper, $files, $fname, array(), DumpTestCase\assertDumpEnd(), DumpTestCase\assertDumpStart(), DumpTestCase\assertPageEnd(), DumpTestCase\assertPageStart(), DumpTestCase\assertRevision(), DumpTestCase\expectETAOutput(), fail, WikiExporter\FULL, MediaWikiTestCase\getNewTempDirectory(), MediaWikiTestCase\getNewTempFile(), DumpTestCase\gunzip(), NS_MAIN, NS_TALK, setUpStub(), WikiExporter\TEXT, wfMkdirParents(), and wfRecursiveRemoveDir().

Referenced by testCheckpointGzip(), and testCheckpointPlain().

◆ setUp()

TextPassDumperTest::setUp ( )
protected

Default set up function.

Clears $wgUser, and reports errors from addDBData to PHPUnit

Reimplemented from DumpTestCase.

Definition at line 86 of file backupTextPassTest.php.

References array().

◆ setUpStub()

TextPassDumperTest::setUpStub (   $fname = null,
  $iterations = 1 
)
private

Creates a stub file that is used for testing the text pass of dumps.

Parameters
$fnamestring: (Optional) Absolute name of the file to write the stub into. If this parameter is null, a new temporary file is generated that is automatically removed upon tearDown.
$iterationsinteger: (Optional) specifies how often the block of 3 pages should go into the stub file. The page and revision id increase further and further, while the text id of the first iteration is reused. The pages and revision of iteration > 1 have no corresponding representation in the database.
Returns
string absolute filename of the stub

Definition at line 436 of file backupTextPassTest.php.

References $fname, $numOfPages, $numOfRevs, and MediaWikiTestCase\getNewTempFile().

Referenced by checkpointHelper(), testPlain(), and testPrefetchPlain().

◆ testCheckpointGzip()

TextPassDumperTest::testCheckpointGzip ( )

tests for working checkpoint generation in gzip format work.

We keep this test in addition to the simpler self::testCheckpointPlain, as there were once problems when the used sinks were DumpPipeOutputs.

xmldumps-backup typically uses bzip2 instead of gzip. However, as bzip2 requires PHP extensions, we go for gzip instead, which triggers the same relevant code paths while still being testable on more systems.

@group large

Definition at line 416 of file backupTextPassTest.php.

References MediaWikiTestCase\checkHasGzip(), and checkpointHelper().

◆ testCheckpointPlain()

TextPassDumperTest::testCheckpointPlain ( )

@group large

Definition at line 400 of file backupTextPassTest.php.

References checkpointHelper().

◆ testPlain()

◆ testPrefetchPlain()

Member Data Documentation

◆ $numOfPages

TextPassDumperTest::$numOfPages = 4
staticprivate

Definition at line 17 of file backupTextPassTest.php.

Referenced by setUpStub().

◆ $numOfRevs

TextPassDumperTest::$numOfRevs = 8
staticprivate

Definition at line 23 of file backupTextPassTest.php.

Referenced by setUpStub().

◆ $pageId1

TextPassDumperTest::$pageId1
private

Definition at line 16 of file backupTextPassTest.php.

◆ $pageId2

TextPassDumperTest::$pageId2

Definition at line 16 of file backupTextPassTest.php.

◆ $pageId3

TextPassDumperTest::$pageId3

Definition at line 16 of file backupTextPassTest.php.

◆ $pageId4

TextPassDumperTest::$pageId4

Definition at line 16 of file backupTextPassTest.php.

◆ $revId1_1

TextPassDumperTest::$revId1_1
private

Definition at line 18 of file backupTextPassTest.php.

◆ $revId2_1

TextPassDumperTest::$revId2_1
private

Definition at line 19 of file backupTextPassTest.php.

◆ $revId2_2

TextPassDumperTest::$revId2_2

Definition at line 19 of file backupTextPassTest.php.

◆ $revId2_3

TextPassDumperTest::$revId2_3
private

Definition at line 20 of file backupTextPassTest.php.

◆ $revId2_4

TextPassDumperTest::$revId2_4

Definition at line 20 of file backupTextPassTest.php.

◆ $revId3_1

TextPassDumperTest::$revId3_1
private

Definition at line 21 of file backupTextPassTest.php.

◆ $revId3_2

TextPassDumperTest::$revId3_2

Definition at line 21 of file backupTextPassTest.php.

◆ $revId4_1

TextPassDumperTest::$revId4_1
private

Definition at line 22 of file backupTextPassTest.php.

◆ $textId1_1

TextPassDumperTest::$textId1_1

Definition at line 18 of file backupTextPassTest.php.

◆ $textId2_1

TextPassDumperTest::$textId2_1

Definition at line 19 of file backupTextPassTest.php.

◆ $textId2_2

TextPassDumperTest::$textId2_2

Definition at line 19 of file backupTextPassTest.php.

◆ $textId2_3

TextPassDumperTest::$textId2_3

Definition at line 20 of file backupTextPassTest.php.

◆ $textId2_4

TextPassDumperTest::$textId2_4

Definition at line 20 of file backupTextPassTest.php.

◆ $textId3_1

TextPassDumperTest::$textId3_1

Definition at line 21 of file backupTextPassTest.php.

◆ $textId3_2

TextPassDumperTest::$textId3_2

Definition at line 21 of file backupTextPassTest.php.

◆ $textId4_1

TextPassDumperTest::$textId4_1

Definition at line 22 of file backupTextPassTest.php.


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