MediaWiki  REL1_24
DumpTestCase Class Reference

Base TestCase for dumps. More...

Inheritance diagram for DumpTestCase:
Collaboration diagram for DumpTestCase:

List of all members.

Public Member Functions

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

Protected Member Functions

 addRevision (Page $page, $text, $summary)
 Adds a revision to a page, while returning the resuting revision's id.
 assertDumpEnd ($name="mediawiki")
 Asserts that the xml reader is at the final closing tag of an xml file and closes the reader.
 assertDumpStart ($fname, $skip_siteinfo=true)
 Opens an XML file to analyze and optionally skips past siteinfo.
 assertNodeEnd ($name, $skip=true)
 Asserts that the xml reader is at an closing element of given name, and optionally skips past it.
 assertNodeStart ($name, $skip=true)
 Asserts that the xml reader is at an element of given name, and optionally skips past it.
 assertPageEnd ()
 Asserts that the xml reader is at the page's closing element and skips to the next element.
 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.
 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.
 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.
 gunzip ($fname)
 gunzips the given file and stores the result in the original file name
 setUp ()
 Default set up function.
 skipPastNodeEnd ($name)
 Step the current XML reader to the first element start after the node end of a given name.
 skipToNodeEnd ($name)
 Step the current XML reader until node end of given name is found.
 skipWhitespace ()
 Steps the xml reader over white space.

Protected Attributes

Exception null $exceptionFromAddDBData = null
 exception to be rethrown once in sound PHPUnit surrounding
XMLReader null $xml = null
 Holds the xmlreader used for analyzing an xml dump.

Detailed Description

Base TestCase for dumps.

Definition at line 6 of file DumpTestCase.php.


Member Function Documentation

DumpTestCase::addRevision ( Page page,
text,
summary 
) [protected]

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

Parameters:
Page$pagePage to add the revision to
string$textRevisions text
string$summaryRevisions summare
Returns:
array
Exceptions:
MWException

Definition at line 35 of file DumpTestCase.php.

Referenced by BackupDumperPageTest\addDBData(), and TextPassDumperTest\addDBData().

DumpTestCase::assertDumpStart ( fname,
skip_siteinfo = true 
) [protected]
DumpTestCase::assertNodeEnd ( name,
skip = true 
) [protected]

Asserts that the xml reader is at an closing element of given name, and optionally skips past it.

Parameters:
string$nameThe name of the closing element to check for (e.g.: "mediawiki" for </mediawiki>)
bool$skip(optional) if true, skip past the found element

Definition at line 230 of file DumpTestCase.php.

Referenced by BackupDumperLoggerTest\assertLogItem().

DumpTestCase::assertNodeStart ( name,
skip = true 
) [protected]

Asserts that the xml reader is at an element of given name, and optionally skips past it.

Parameters:
string$nameThe name of the element to check for (e.g.: "mediawiki" for <mediawiki>)
bool$skip(optional) if true, skip past the found element

Definition at line 214 of file DumpTestCase.php.

Referenced by BackupDumperLoggerTest\assertLogItem().

DumpTestCase::assertPageStart ( id,
ns,
name 
) [protected]

Asserts that the xml reader is at the start of a page element and skips over the first tags, after checking them.

Besides the opening page element, this function also checks for and skips over the title, ns, and id tags. Hence after this function, the xml reader is at the first revision of the current page.

Parameters:
int$idId of the page to assert
int$nsNumber of namespage to assert
string$nameTitle of the current page

Definition at line 275 of file DumpTestCase.php.

Referenced by TextPassDumperTest\checkpointHelper(), BackupDumperPageTest\testCurrentStubGzip(), BackupDumperPageTest\testCurrentStubPlain(), BackupDumperPageTest\testFullStubPlain(), BackupDumperPageTest\testFullTextPlain(), TextPassDumperTest\testPlain(), TextPassDumperTest\testPrefetchPlain(), and BackupDumperPageTest\testXmlDumpsBackupUseCase().

DumpTestCase::assertRevision ( id,
summary,
text_id,
text_bytes,
text_sha1,
text = false,
parentid = false,
model = CONTENT_MODEL_WIKITEXT,
format = CONTENT_FORMAT_WIKITEXT 
) [protected]

Asserts that the xml reader is at a revision and checks its representation before skipping over it.

Parameters:
int$idId of the revision
string$summarySummary of the revision
int$text_idId of the revision's text
int$text_bytesNumber of bytes in the revision's text
string$text_sha1The base36 SHA-1 of the revision's text
string | bool$text(optional) The revision's string, or false to check for a revision stub
int | bool$parentid(optional) id of the parent revision
string$modelThe expected content model id (default: CONTENT_MODEL_WIKITEXT)
string$formatThe expected format model id (default: CONTENT_FORMAT_WIKITEXT)

Definition at line 309 of file DumpTestCase.php.

Referenced by TextPassDumperTest\checkpointHelper(), BackupDumperPageTest\testCurrentStubGzip(), BackupDumperPageTest\testCurrentStubPlain(), BackupDumperPageTest\testFullStubPlain(), BackupDumperPageTest\testFullTextPlain(), TextPassDumperTest\testPlain(), TextPassDumperTest\testPrefetchPlain(), and BackupDumperPageTest\testXmlDumpsBackupUseCase().

DumpTestCase::assertText ( id,
text_id,
text_bytes,
text 
) [protected]

Definition at line 355 of file DumpTestCase.php.

DumpTestCase::assertTextNode ( name,
text,
skip_ws = true 
) [protected]

Asserts that the xml reader is at an element of given tag that contains a given text, and skips over the element.

Parameters:
string$nameThe name of the element to check for (e.g.: "mediawiki" for <mediawiki>...</mediawiki>)
string | bool$textIf string, check if it equals the elements text. If false, ignore the element's text
bool$skip_ws(optional) if true, skip past white spaces that trail the closing element.

Definition at line 249 of file DumpTestCase.php.

Referenced by BackupDumperLoggerTest\assertLogItem().

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

Definition at line 96 of file DumpTestCase.php.

Referenced by TextPassDumperTest\checkpointHelper(), and BackupDumperPageTest\testXmlDumpsBackupUseCase().

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 61 of file DumpTestCase.php.

Referenced by TextPassDumperTest\checkpointHelper(), BackupDumperPageTest\testCurrentStubGzip(), BackupDumperPageTest\testXmlDumpsBackupUseCase(), and BackupDumperLoggerTest\testXmlDumpsBackupUseCaseLogging().

DumpTestCase::setUp ( ) [protected]

Default set up function.

Clears $wgUser, and reports errors from addDBData to PHPUnit

Reimplemented from MediaWikiLangTestCase.

Reimplemented in TextPassDumperTest, and BackupDumperPageTest.

Definition at line 81 of file DumpTestCase.php.

DumpTestCase::skipPastNodeEnd ( name) [protected]

Step the current XML reader to the first element start after the node end of a given name.

Parameters:
string$nameName of the closing element to look for (e.g.: "mediawiki" when looking for </mediawiki>)
Returns:
bool True if new element after the closing of $name could be found. false otherwise.

Definition at line 149 of file DumpTestCase.php.

DumpTestCase::skipToNodeEnd ( name) [protected]

Step the current XML reader until node end of given name is found.

Parameters:
string$nameName of the closing element to look for (e.g.: "mediawiki" when looking for </mediawiki>)
Returns:
bool True if the end node could be found. false otherwise.

Definition at line 127 of file DumpTestCase.php.

Steps the xml reader over white space.

Definition at line 198 of file DumpTestCase.php.

Referenced by BackupDumperLoggerTest\assertLogItem().


Member Data Documentation

Exception null 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 18 of file DumpTestCase.php.

XMLReader null DumpTestCase::$xml = null [protected]

Holds the xmlreader used for analyzing an xml dump.

Definition at line 24 of file DumpTestCase.php.


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