summaryrefslogtreecommitdiff
path: root/tests/phpunit/maintenance
diff options
context:
space:
mode:
authorLuke Shumaker <LukeShu@sbcglobal.net>2014-01-28 09:50:25 -0500
committerLuke Shumaker <LukeShu@sbcglobal.net>2014-01-28 09:50:25 -0500
commit5744df39e15f85c6cc8a9faf8924d77e76d2b216 (patch)
treea8c8dd40a94d1fa0d5377566aa5548ae55a163da /tests/phpunit/maintenance
parent4bb2aeca1d198391ca856aa16c40b8559c68daec (diff)
parent224b22a051051f6c2e494c3a2fb4adb42898e2d1 (diff)
Merge branch 'archwiki'
Conflicts: extensions/FluxBBAuthPlugin.php extensions/SyntaxHighlight_GeSHi/README extensions/SyntaxHighlight_GeSHi/SyntaxHighlight_GeSHi.class.php extensions/SyntaxHighlight_GeSHi/SyntaxHighlight_GeSHi.i18n.php extensions/SyntaxHighlight_GeSHi/SyntaxHighlight_GeSHi.php extensions/SyntaxHighlight_GeSHi/geshi/docs/CHANGES extensions/SyntaxHighlight_GeSHi/geshi/docs/THANKS extensions/SyntaxHighlight_GeSHi/geshi/docs/TODO extensions/SyntaxHighlight_GeSHi/geshi/docs/api/media/images/AbstractClass.png extensions/SyntaxHighlight_GeSHi/geshi/docs/api/media/images/AbstractClass_logo.png extensions/SyntaxHighlight_GeSHi/geshi/docs/api/media/images/AbstractMethod.png extensions/SyntaxHighlight_GeSHi/geshi/docs/api/media/images/AbstractPrivateClass.png extensions/SyntaxHighlight_GeSHi/geshi/docs/api/media/images/AbstractPrivateClass_logo.png extensions/SyntaxHighlight_GeSHi/geshi/docs/api/media/images/AbstractPrivateMethod.png extensions/SyntaxHighlight_GeSHi/geshi/docs/api/media/images/Class.png extensions/SyntaxHighlight_GeSHi/geshi/docs/api/media/images/Class_logo.png extensions/SyntaxHighlight_GeSHi/geshi/docs/api/media/images/Constant.png extensions/SyntaxHighlight_GeSHi/geshi/docs/api/media/images/Constructor.png extensions/SyntaxHighlight_GeSHi/geshi/docs/api/media/images/Destructor.png extensions/SyntaxHighlight_GeSHi/geshi/docs/api/media/images/Function.png extensions/SyntaxHighlight_GeSHi/geshi/docs/api/media/images/Global.png extensions/SyntaxHighlight_GeSHi/geshi/docs/api/media/images/I.png extensions/SyntaxHighlight_GeSHi/geshi/docs/api/media/images/Index.png extensions/SyntaxHighlight_GeSHi/geshi/docs/api/media/images/Interface.png extensions/SyntaxHighlight_GeSHi/geshi/docs/api/media/images/Interface_logo.png extensions/SyntaxHighlight_GeSHi/geshi/docs/api/media/images/L.png extensions/SyntaxHighlight_GeSHi/geshi/docs/api/media/images/Lminus.png extensions/SyntaxHighlight_GeSHi/geshi/docs/api/media/images/Lplus.png extensions/SyntaxHighlight_GeSHi/geshi/docs/api/media/images/Method.png extensions/SyntaxHighlight_GeSHi/geshi/docs/api/media/images/Page.png extensions/SyntaxHighlight_GeSHi/geshi/docs/api/media/images/Page_logo.png extensions/SyntaxHighlight_GeSHi/geshi/docs/api/media/images/PrivateClass.png extensions/SyntaxHighlight_GeSHi/geshi/docs/api/media/images/PrivateClass_logo.png extensions/SyntaxHighlight_GeSHi/geshi/docs/api/media/images/PrivateMethod.png extensions/SyntaxHighlight_GeSHi/geshi/docs/api/media/images/PrivateVariable.png extensions/SyntaxHighlight_GeSHi/geshi/docs/api/media/images/StaticMethod.png extensions/SyntaxHighlight_GeSHi/geshi/docs/api/media/images/StaticVariable.png extensions/SyntaxHighlight_GeSHi/geshi/docs/api/media/images/T.png extensions/SyntaxHighlight_GeSHi/geshi/docs/api/media/images/Tminus.png extensions/SyntaxHighlight_GeSHi/geshi/docs/api/media/images/Tplus.png extensions/SyntaxHighlight_GeSHi/geshi/docs/api/media/images/Variable.png extensions/SyntaxHighlight_GeSHi/geshi/docs/api/media/images/blank.png extensions/SyntaxHighlight_GeSHi/geshi/docs/api/media/images/class_folder.png extensions/SyntaxHighlight_GeSHi/geshi/docs/api/media/images/file.png extensions/SyntaxHighlight_GeSHi/geshi/docs/api/media/images/folder.png extensions/SyntaxHighlight_GeSHi/geshi/docs/api/media/images/function_folder.png extensions/SyntaxHighlight_GeSHi/geshi/docs/api/media/images/next_button.png extensions/SyntaxHighlight_GeSHi/geshi/docs/api/media/images/next_button_disabled.png extensions/SyntaxHighlight_GeSHi/geshi/docs/api/media/images/package.png extensions/SyntaxHighlight_GeSHi/geshi/docs/api/media/images/package_folder.png extensions/SyntaxHighlight_GeSHi/geshi/docs/api/media/images/previous_button.png extensions/SyntaxHighlight_GeSHi/geshi/docs/api/media/images/previous_button_disabled.png extensions/SyntaxHighlight_GeSHi/geshi/docs/api/media/images/private_class_logo.png extensions/SyntaxHighlight_GeSHi/geshi/docs/api/media/images/tutorial.png extensions/SyntaxHighlight_GeSHi/geshi/docs/api/media/images/tutorial_folder.png extensions/SyntaxHighlight_GeSHi/geshi/docs/api/media/images/up_button.png extensions/SyntaxHighlight_GeSHi/geshi/docs/geshi-doc.html extensions/SyntaxHighlight_GeSHi/geshi/docs/geshi-doc.txt extensions/SyntaxHighlight_GeSHi/geshi/geshi.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/4cs.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/6502acme.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/6502kickass.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/6502tasm.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/68000devpac.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/abap.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/actionscript.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/actionscript3.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/ada.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/algol68.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/apache.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/applescript.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/apt_sources.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/asm.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/asp.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/autoconf.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/autohotkey.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/autoit.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/avisynth.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/awk.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/bascomavr.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/bash.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/basic4gl.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/bf.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/bibtex.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/blitzbasic.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/bnf.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/boo.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/c.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/c_loadrunner.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/c_mac.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/caddcl.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/cadlisp.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/cfdg.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/cfm.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/chaiscript.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/cil.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/clojure.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/cmake.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/cobol.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/coffeescript.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/cpp-qt.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/cpp.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/csharp.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/css.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/cuesheet.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/d.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/dcs.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/delphi.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/diff.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/div.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/dos.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/dot.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/e.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/ecmascript.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/eiffel.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/email.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/epc.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/erlang.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/euphoria.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/f1.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/falcon.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/fo.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/fortran.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/freebasic.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/fsharp.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/gambas.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/gdb.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/genero.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/genie.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/gettext.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/glsl.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/gml.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/gnuplot.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/go.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/groovy.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/gwbasic.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/haskell.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/hicest.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/hq9plus.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/html4strict.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/html5.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/icon.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/idl.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/ini.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/inno.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/intercal.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/io.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/j.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/java.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/java5.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/javascript.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/jquery.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/kixtart.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/klonec.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/klonecpp.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/latex.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/lb.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/lisp.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/llvm.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/locobasic.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/logtalk.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/lolcode.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/lotusformulas.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/lotusscript.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/lscript.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/lsl2.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/lua.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/m68k.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/magiksf.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/make.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/mapbasic.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/matlab.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/mirc.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/mmix.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/modula2.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/modula3.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/mpasm.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/mxml.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/mysql.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/newlisp.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/nsis.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/oberon2.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/objc.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/objeck.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/ocaml-brief.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/ocaml.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/oobas.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/oracle11.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/oracle8.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/oxygene.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/oz.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/pascal.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/pcre.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/per.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/perl.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/perl6.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/pf.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/php-brief.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/php.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/pic16.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/pike.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/pixelbender.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/pli.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/plsql.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/postgresql.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/povray.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/powerbuilder.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/powershell.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/proftpd.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/progress.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/prolog.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/properties.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/providex.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/purebasic.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/pycon.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/python.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/q.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/qbasic.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/rails.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/rebol.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/reg.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/robots.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/rpmspec.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/rsplus.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/ruby.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/sas.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/scala.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/scheme.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/scilab.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/sdlbasic.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/smalltalk.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/smarty.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/sql.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/systemverilog.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/tcl.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/teraterm.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/text.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/thinbasic.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/tsql.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/typoscript.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/unicon.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/uscript.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/vala.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/vb.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/vbnet.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/verilog.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/vhdl.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/vim.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/visualfoxpro.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/visualprolog.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/whitespace.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/whois.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/winbatch.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/xbasic.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/xml.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/xorg_conf.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/xpp.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/yaml.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/z80.php extensions/SyntaxHighlight_GeSHi/geshi/geshi/zxbasic.php
Diffstat (limited to 'tests/phpunit/maintenance')
-rw-r--r--tests/phpunit/maintenance/DumpTestCase.php71
-rw-r--r--tests/phpunit/maintenance/MaintenanceTest.php230
-rw-r--r--tests/phpunit/maintenance/backupPrefetchTest.php17
-rw-r--r--tests/phpunit/maintenance/backupTextPassTest.php178
-rw-r--r--tests/phpunit/maintenance/backup_LogTest.php33
-rw-r--r--tests/phpunit/maintenance/backup_PageTest.php117
-rw-r--r--tests/phpunit/maintenance/fetchTextTest.php55
-rw-r--r--tests/phpunit/maintenance/getSlaveServerTest.php8
8 files changed, 386 insertions, 323 deletions
diff --git a/tests/phpunit/maintenance/DumpTestCase.php b/tests/phpunit/maintenance/DumpTestCase.php
index d1344389..83d8c71d 100644
--- a/tests/phpunit/maintenance/DumpTestCase.php
+++ b/tests/phpunit/maintenance/DumpTestCase.php
@@ -35,7 +35,7 @@ abstract class DumpTestCase extends MediaWikiLangTestCase {
* @throws MWExcepion
*/
protected function addRevision( Page $page, $text, $summary ) {
- $status = $page->doEdit( $text, $summary );
+ $status = $page->doEditContent( ContentHandler::makeContent( $text, $page->getTitle() ), $summary );
if ( $status->isGood() ) {
$value = $status->getValue();
$revision = $value['revision'];
@@ -57,14 +57,17 @@ abstract class DumpTestCase extends MediaWikiLangTestCase {
*/
protected function gunzip( $fname ) {
$gzipped_contents = file_get_contents( $fname );
- if ( $gzipped_contents === FALSE ) {
+ if ( $gzipped_contents === false ) {
$this->fail( "Could not get contents of $fname" );
}
- // We resort to use gzinflate instead of gzdecode, as gzdecode
- // need not be available
- $contents = gzinflate( substr( $gzipped_contents, 10, -8 ) );
- $this->assertEquals( strlen( $contents ),
- file_put_contents( $fname, $contents ), "# bytes written" );
+
+ $contents = gzdecode( $gzipped_contents );
+
+ $this->assertEquals(
+ strlen( $contents ),
+ file_put_contents( $fname, $contents ),
+ '# bytes written'
+ );
}
/**
@@ -72,9 +75,7 @@ abstract class DumpTestCase extends MediaWikiLangTestCase {
*
* Clears $wgUser, and reports errors from addDBData to PHPUnit
*/
- public function setUp() {
- global $wgUser;
-
+ protected function setUp() {
parent::setUp();
// Check if any Exception is stored for rethrowing from addDBData
@@ -83,7 +84,7 @@ abstract class DumpTestCase extends MediaWikiLangTestCase {
throw $this->exceptionFromAddDBData;
}
- $wgUser = new User();
+ $this->setMwGlobals( 'wgUser', new User() );
}
/**
@@ -116,15 +117,17 @@ abstract class DumpTestCase extends MediaWikiLangTestCase {
* @param $name string: name of the closing element to look for
* (e.g.: "mediawiki" when looking for </mediawiki>)
*
- * @return bool: true iff the end node could be found. false otherwise.
+ * @return bool: true if the end node could be found. false otherwise.
*/
protected function skipToNodeEnd( $name ) {
while ( $this->xml->read() ) {
if ( $this->xml->nodeType == XMLReader::END_ELEMENT &&
- $this->xml->name == $name ) {
+ $this->xml->name == $name
+ ) {
return true;
}
}
+
return false;
}
@@ -146,6 +149,7 @@ abstract class DumpTestCase extends MediaWikiLangTestCase {
return true;
}
}
+
return false;
}
@@ -189,7 +193,7 @@ abstract class DumpTestCase extends MediaWikiLangTestCase {
protected function skipWhitespace() {
$cont = true;
while ( $cont && ( ( $this->xml->nodeType == XMLReader::WHITESPACE )
- || ( $this->xml->nodeType == XMLReader::SIGNIFICANT_WHITESPACE ) ) ) {
+ || ( $this->xml->nodeType == XMLReader::SIGNIFICANT_WHITESPACE ) ) ) {
$cont = $this->xml->read();
}
}
@@ -272,7 +276,6 @@ abstract class DumpTestCase extends MediaWikiLangTestCase {
$this->assertTextNode( "title", $name );
$this->assertTextNode( "ns", $ns );
$this->assertTextNode( "id", $id );
-
}
/**
@@ -295,10 +298,13 @@ abstract class DumpTestCase extends MediaWikiLangTestCase {
* @param $text_sha1 string: the base36 SHA-1 of the revision's text
* @param $text string|false: (optional) The revision's string, or false to check for a
* revision stub
+ * @param $model String: the expected content model id (default: CONTENT_MODEL_WIKITEXT)
+ * @param $format String: the expected format model id (default: CONTENT_FORMAT_WIKITEXT)
* @param $parentid int|false: (optional) id of the parent revision
*/
- protected function assertRevision( $id, $summary, $text_id, $text_bytes, $text_sha1, $text = false, $parentid = false ) {
-
+ protected function assertRevision( $id, $summary, $text_id, $text_bytes, $text_sha1, $text = false, $parentid = false,
+ $model = CONTENT_MODEL_WIKITEXT, $format = CONTENT_FORMAT_WIKITEXT
+ ) {
$this->assertNodeStart( "revision" );
$this->skipWhitespace();
@@ -315,9 +321,33 @@ abstract class DumpTestCase extends MediaWikiLangTestCase {
$this->skipWhitespace();
$this->assertTextNode( "comment", $summary );
+ $this->skipWhitespace();
+
+ if ( $this->xml->name == "text" ) {
+ // note: <text> tag may occur here or at the very end.
+ $text_found = true;
+ $this->assertText( $id, $text_id, $text_bytes, $text );
+ } else {
+ $text_found = false;
+ }
$this->assertTextNode( "sha1", $text_sha1 );
+ $this->assertTextNode( "model", $model );
+ $this->skipWhitespace();
+
+ $this->assertTextNode( "format", $format );
+ $this->skipWhitespace();
+
+ if ( !$text_found ) {
+ $this->assertText( $id, $text_id, $text_bytes, $text );
+ }
+
+ $this->assertNodeEnd( "revision" );
+ $this->skipWhitespace();
+ }
+
+ protected function assertText( $id, $text_id, $text_bytes, $text ) {
$this->assertNodeStart( "text", false );
if ( $text_bytes !== false ) {
$this->assertEquals( $this->xml->getAttribute( "bytes" ), $text_bytes,
@@ -331,7 +361,8 @@ abstract class DumpTestCase extends MediaWikiLangTestCase {
$this->assertFalse( $this->xml->hasValue, "Revision has text" );
$this->assertTrue( $this->xml->read(), "Skipping text start tag" );
if ( ( $this->xml->nodeType == XMLReader::END_ELEMENT )
- && ( $this->xml->name == "text" ) ) {
+ && ( $this->xml->name == "text" )
+ ) {
$this->xml->read();
}
@@ -344,9 +375,5 @@ abstract class DumpTestCase extends MediaWikiLangTestCase {
$this->assertNodeEnd( "text" );
$this->skipWhitespace();
}
-
- $this->assertNodeEnd( "revision" );
- $this->skipWhitespace();
}
-
}
diff --git a/tests/phpunit/maintenance/MaintenanceTest.php b/tests/phpunit/maintenance/MaintenanceTest.php
index 4a6f08fa..318ce0da 100644
--- a/tests/phpunit/maintenance/MaintenanceTest.php
+++ b/tests/phpunit/maintenance/MaintenanceTest.php
@@ -43,7 +43,7 @@ class MaintenanceFixup extends Maintenance {
private $testCase;
/**
- * shutdownSimulated === true iff simulateShutdown has done it's work
+ * shutdownSimulated === true if simulateShutdown has done it's work
*
* @var bool
*/
@@ -81,22 +81,23 @@ class MaintenanceFixup extends Maintenance {
return;
}
- return call_user_func_array ( array( "parent", __FUNCTION__ ), func_get_args() );
+ return call_user_func_array( array( "parent", __FUNCTION__ ), func_get_args() );
}
/**
* Safety net around register_shutdown_function of Maintenance.php
*/
public function __destruct() {
- if ( ( ! $this->shutdownSimulated ) && ( ! $this->testCase->hasFailed() ) ) {
+ if ( !$this->shutdownSimulated ) {
// Someone generated a MaintenanceFixup instance without calling
// simulateShutdown. We'd have to raise a PHPUnit exception to correctly
// flag this illegal usage. However, we are already in a destruktor, which
- // would trigger undefined behaviour. Hence, we can only report to the
+ // would trigger undefined behavior. Hence, we can only report to the
// error output :( Hopefully people read the PHPUnit output.
- fwrite( STDERR, "ERROR! Instance of " . __CLASS__ . " destructed without "
- . "calling simulateShutdown method. Call simulateShutdown on the "
- . "instance before it gets destructed." );
+ $name = $this->testCase->getName();
+ fwrite( STDERR, "ERROR! Instance of " . __CLASS__ . " for test $name "
+ . "destructed without calling simulateShutdown method. Call "
+ . "simulateShutdown on the instance before it gets destructed." );
}
// The following guard is required, as PHP does not offer default destructors :(
@@ -111,7 +112,6 @@ class MaintenanceFixup extends Maintenance {
}
-
// --- Making protected functions visible for test
public function output( $out, $channel = null ) {
@@ -119,17 +119,15 @@ class MaintenanceFixup extends Maintenance {
// Maintenance::output signature. However, we do not use (or rely on)
// those variables. Instead we pass to Maintenance::output whatever we
// receive at runtime.
- return call_user_func_array ( array( "parent", __FUNCTION__ ), func_get_args() );
+ return call_user_func_array( array( "parent", __FUNCTION__ ), func_get_args() );
}
-
// --- Requirements for getting instance of abstract class
public function execute() {
$this->testCase->fail( __METHOD__ . " called unexpectedly" );
}
-
}
class MaintenanceTest extends MediaWikiTestCase {
@@ -148,6 +146,14 @@ class MaintenanceTest extends MediaWikiTestCase {
$this->m = new MaintenanceFixup( $this );
}
+ protected function tearDown() {
+ if ( $this->m ) {
+ $this->m->simulateShutdown();
+ $this->m = null;
+ }
+ parent::tearDown();
+ }
+
/**
* asserts the output before and after simulating shutdown
@@ -164,9 +170,10 @@ class MaintenanceTest extends MediaWikiTestCase {
private function assertOutputPrePostShutdown( $preShutdownOutput, $expectNLAppending ) {
$this->assertEquals( $preShutdownOutput, $this->getActualOutput(),
- "Output before shutdown simulation" );
+ "Output before shutdown simulation" );
$this->m->simulateShutdown();
+ $this->m = null;
$postShutdownOutput = $preShutdownOutput . ( $expectNLAppending ? "\n" : "" );
$this->expectOutputString( $postShutdownOutput );
@@ -176,49 +183,48 @@ class MaintenanceTest extends MediaWikiTestCase {
// Although the following tests do not seem to be too consistent (compare for
// example the newlines within the test.*StringString tests, or the
// test.*Intermittent.* tests), the objective of these tests is not to describe
- // consistent behaviour, but rather currently existing behaviour.
-
+ // consistent behavior, but rather currently existing behavior.
function testOutputEmpty() {
$this->m->output( "" );
- $this->assertOutputPrePostShutdown( "", False );
+ $this->assertOutputPrePostShutdown( "", false );
}
function testOutputString() {
$this->m->output( "foo" );
- $this->assertOutputPrePostShutdown( "foo", False );
+ $this->assertOutputPrePostShutdown( "foo", false );
}
function testOutputStringString() {
$this->m->output( "foo" );
$this->m->output( "bar" );
- $this->assertOutputPrePostShutdown( "foobar", False );
+ $this->assertOutputPrePostShutdown( "foobar", false );
}
function testOutputStringNL() {
$this->m->output( "foo\n" );
- $this->assertOutputPrePostShutdown( "foo\n", False );
+ $this->assertOutputPrePostShutdown( "foo\n", false );
}
function testOutputStringNLNL() {
$this->m->output( "foo\n\n" );
- $this->assertOutputPrePostShutdown( "foo\n\n", False );
+ $this->assertOutputPrePostShutdown( "foo\n\n", false );
}
function testOutputStringNLString() {
$this->m->output( "foo\nbar" );
- $this->assertOutputPrePostShutdown( "foo\nbar", False );
+ $this->assertOutputPrePostShutdown( "foo\nbar", false );
}
function testOutputStringNLStringNL() {
$this->m->output( "foo\nbar\n" );
- $this->assertOutputPrePostShutdown( "foo\nbar\n", False );
+ $this->assertOutputPrePostShutdown( "foo\nbar\n", false );
}
function testOutputStringNLStringNLLinewise() {
$this->m->output( "foo\n" );
$this->m->output( "bar\n" );
- $this->assertOutputPrePostShutdown( "foo\nbar\n", False );
+ $this->assertOutputPrePostShutdown( "foo\nbar\n", false );
}
function testOutputStringNLStringNLArbitrary() {
@@ -229,7 +235,7 @@ class MaintenanceTest extends MediaWikiTestCase {
$this->m->output( "ba" );
$this->m->output( "" );
$this->m->output( "r\n" );
- $this->assertOutputPrePostShutdown( "foo\nbar\n", False );
+ $this->assertOutputPrePostShutdown( "foo\nbar\n", false );
}
function testOutputStringNLStringNLArbitraryAgain() {
@@ -240,49 +246,49 @@ class MaintenanceTest extends MediaWikiTestCase {
$this->m->output( "a" );
$this->m->output( "" );
$this->m->output( "r\n" );
- $this->assertOutputPrePostShutdown( "foo\nbar\n", False );
+ $this->assertOutputPrePostShutdown( "foo\nbar\n", false );
}
function testOutputWNullChannelEmpty() {
$this->m->output( "", null );
- $this->assertOutputPrePostShutdown( "", False );
+ $this->assertOutputPrePostShutdown( "", false );
}
function testOutputWNullChannelString() {
$this->m->output( "foo", null );
- $this->assertOutputPrePostShutdown( "foo", False );
+ $this->assertOutputPrePostShutdown( "foo", false );
}
function testOutputWNullChannelStringString() {
$this->m->output( "foo", null );
$this->m->output( "bar", null );
- $this->assertOutputPrePostShutdown( "foobar", False );
+ $this->assertOutputPrePostShutdown( "foobar", false );
}
function testOutputWNullChannelStringNL() {
$this->m->output( "foo\n", null );
- $this->assertOutputPrePostShutdown( "foo\n", False );
+ $this->assertOutputPrePostShutdown( "foo\n", false );
}
function testOutputWNullChannelStringNLNL() {
$this->m->output( "foo\n\n", null );
- $this->assertOutputPrePostShutdown( "foo\n\n", False );
+ $this->assertOutputPrePostShutdown( "foo\n\n", false );
}
function testOutputWNullChannelStringNLString() {
$this->m->output( "foo\nbar", null );
- $this->assertOutputPrePostShutdown( "foo\nbar", False );
+ $this->assertOutputPrePostShutdown( "foo\nbar", false );
}
function testOutputWNullChannelStringNLStringNL() {
$this->m->output( "foo\nbar\n", null );
- $this->assertOutputPrePostShutdown( "foo\nbar\n", False );
+ $this->assertOutputPrePostShutdown( "foo\nbar\n", false );
}
function testOutputWNullChannelStringNLStringNLLinewise() {
$this->m->output( "foo\n", null );
$this->m->output( "bar\n", null );
- $this->assertOutputPrePostShutdown( "foo\nbar\n", False );
+ $this->assertOutputPrePostShutdown( "foo\nbar\n", false );
}
function testOutputWNullChannelStringNLStringNLArbitrary() {
@@ -293,7 +299,7 @@ class MaintenanceTest extends MediaWikiTestCase {
$this->m->output( "ba", null );
$this->m->output( "", null );
$this->m->output( "r\n", null );
- $this->assertOutputPrePostShutdown( "foo\nbar\n", False );
+ $this->assertOutputPrePostShutdown( "foo\nbar\n", false );
}
function testOutputWNullChannelStringNLStringNLArbitraryAgain() {
@@ -304,17 +310,17 @@ class MaintenanceTest extends MediaWikiTestCase {
$this->m->output( "a", null );
$this->m->output( "", null );
$this->m->output( "r\n", null );
- $this->assertOutputPrePostShutdown( "foo\nbar\n", False );
+ $this->assertOutputPrePostShutdown( "foo\nbar\n", false );
}
function testOutputWChannelString() {
$this->m->output( "foo", "bazChannel" );
- $this->assertOutputPrePostShutdown( "foo", True );
+ $this->assertOutputPrePostShutdown( "foo", true );
}
function testOutputWChannelStringNL() {
$this->m->output( "foo\n", "bazChannel" );
- $this->assertOutputPrePostShutdown( "foo", True );
+ $this->assertOutputPrePostShutdown( "foo", true );
}
function testOutputWChannelStringNLNL() {
@@ -323,23 +329,23 @@ class MaintenanceTest extends MediaWikiTestCase {
// outputChanneled with a string ending in a nl ... which is not allowed
// according to the documentation of outputChanneled)
$this->m->output( "foo\n\n", "bazChannel" );
- $this->assertOutputPrePostShutdown( "foo\n", True );
+ $this->assertOutputPrePostShutdown( "foo\n", true );
}
function testOutputWChannelStringNLString() {
$this->m->output( "foo\nbar", "bazChannel" );
- $this->assertOutputPrePostShutdown( "foo\nbar", True );
+ $this->assertOutputPrePostShutdown( "foo\nbar", true );
}
function testOutputWChannelStringNLStringNL() {
$this->m->output( "foo\nbar\n", "bazChannel" );
- $this->assertOutputPrePostShutdown( "foo\nbar", True );
+ $this->assertOutputPrePostShutdown( "foo\nbar", true );
}
function testOutputWChannelStringNLStringNLLinewise() {
$this->m->output( "foo\n", "bazChannel" );
$this->m->output( "bar\n", "bazChannel" );
- $this->assertOutputPrePostShutdown( "foobar", True );
+ $this->assertOutputPrePostShutdown( "foobar", true );
}
function testOutputWChannelStringNLStringNLArbitrary() {
@@ -350,7 +356,7 @@ class MaintenanceTest extends MediaWikiTestCase {
$this->m->output( "ba", "bazChannel" );
$this->m->output( "", "bazChannel" );
$this->m->output( "r\n", "bazChannel" );
- $this->assertOutputPrePostShutdown( "foobar", True );
+ $this->assertOutputPrePostShutdown( "foobar", true );
}
function testOutputWChannelStringNLStringNLArbitraryAgain() {
@@ -361,7 +367,7 @@ class MaintenanceTest extends MediaWikiTestCase {
$this->m->output( "a", "bazChannel" );
$this->m->output( "", "bazChannel" );
$this->m->output( "r\n", "bazChannel" );
- $this->assertOutputPrePostShutdown( "foo\nbar", True );
+ $this->assertOutputPrePostShutdown( "foo\nbar", true );
}
function testOutputWMultipleChannelsChannelChange() {
@@ -369,7 +375,7 @@ class MaintenanceTest extends MediaWikiTestCase {
$this->m->output( "bar", "bazChannel" );
$this->m->output( "qux", "quuxChannel" );
$this->m->output( "corge", "bazChannel" );
- $this->assertOutputPrePostShutdown( "foobar\nqux\ncorge", True );
+ $this->assertOutputPrePostShutdown( "foobar\nqux\ncorge", true );
}
function testOutputWMultipleChannelsChannelChangeNL() {
@@ -377,7 +383,7 @@ class MaintenanceTest extends MediaWikiTestCase {
$this->m->output( "bar\n", "bazChannel" );
$this->m->output( "qux\n", "quuxChannel" );
$this->m->output( "corge", "bazChannel" );
- $this->assertOutputPrePostShutdown( "foobar\nqux\ncorge", True );
+ $this->assertOutputPrePostShutdown( "foobar\nqux\ncorge", true );
}
function testOutputWAndWOChannelStringStartWO() {
@@ -385,7 +391,7 @@ class MaintenanceTest extends MediaWikiTestCase {
$this->m->output( "bar", "bazChannel" );
$this->m->output( "qux" );
$this->m->output( "quux", "bazChannel" );
- $this->assertOutputPrePostShutdown( "foobar\nquxquux", True );
+ $this->assertOutputPrePostShutdown( "foobar\nquxquux", true );
}
function testOutputWAndWOChannelStringStartW() {
@@ -393,27 +399,27 @@ class MaintenanceTest extends MediaWikiTestCase {
$this->m->output( "bar" );
$this->m->output( "qux", "bazChannel" );
$this->m->output( "quux" );
- $this->assertOutputPrePostShutdown( "foo\nbarqux\nquux", False );
+ $this->assertOutputPrePostShutdown( "foo\nbarqux\nquux", false );
}
function testOutputWChannelTypeSwitch() {
$this->m->output( "foo", 1 );
$this->m->output( "bar", 1.0 );
- $this->assertOutputPrePostShutdown( "foo\nbar", True );
+ $this->assertOutputPrePostShutdown( "foo\nbar", true );
}
function testOutputIntermittentEmpty() {
$this->m->output( "foo" );
$this->m->output( "" );
$this->m->output( "bar" );
- $this->assertOutputPrePostShutdown( "foobar", False );
+ $this->assertOutputPrePostShutdown( "foobar", false );
}
function testOutputIntermittentFalse() {
$this->m->output( "foo" );
$this->m->output( false );
$this->m->output( "bar" );
- $this->assertOutputPrePostShutdown( "foobar", False );
+ $this->assertOutputPrePostShutdown( "foobar", false );
}
function testOutputIntermittentFalseAfterOtherChannel() {
@@ -421,35 +427,35 @@ class MaintenanceTest extends MediaWikiTestCase {
$this->m->output( "foo" );
$this->m->output( false );
$this->m->output( "bar" );
- $this->assertOutputPrePostShutdown( "qux\nfoobar", False );
+ $this->assertOutputPrePostShutdown( "qux\nfoobar", false );
}
function testOutputWNullChannelIntermittentEmpty() {
$this->m->output( "foo", null );
$this->m->output( "", null );
$this->m->output( "bar", null );
- $this->assertOutputPrePostShutdown( "foobar", False );
+ $this->assertOutputPrePostShutdown( "foobar", false );
}
function testOutputWNullChannelIntermittentFalse() {
$this->m->output( "foo", null );
$this->m->output( false, null );
$this->m->output( "bar", null );
- $this->assertOutputPrePostShutdown( "foobar", False );
+ $this->assertOutputPrePostShutdown( "foobar", false );
}
function testOutputWChannelIntermittentEmpty() {
$this->m->output( "foo", "bazChannel" );
$this->m->output( "", "bazChannel" );
$this->m->output( "bar", "bazChannel" );
- $this->assertOutputPrePostShutdown( "foobar", True );
+ $this->assertOutputPrePostShutdown( "foobar", true );
}
function testOutputWChannelIntermittentFalse() {
$this->m->output( "foo", "bazChannel" );
$this->m->output( false, "bazChannel" );
$this->m->output( "bar", "bazChannel" );
- $this->assertOutputPrePostShutdown( "foobar", True );
+ $this->assertOutputPrePostShutdown( "foobar", true );
}
// Note that (per documentation) outputChanneled does take strings that end
@@ -457,23 +463,23 @@ class MaintenanceTest extends MediaWikiTestCase {
function testOutputChanneledEmpty() {
$this->m->outputChanneled( "" );
- $this->assertOutputPrePostShutdown( "\n", False );
+ $this->assertOutputPrePostShutdown( "\n", false );
}
function testOutputChanneledString() {
$this->m->outputChanneled( "foo" );
- $this->assertOutputPrePostShutdown( "foo\n", False );
+ $this->assertOutputPrePostShutdown( "foo\n", false );
}
function testOutputChanneledStringString() {
$this->m->outputChanneled( "foo" );
$this->m->outputChanneled( "bar" );
- $this->assertOutputPrePostShutdown( "foo\nbar\n", False );
+ $this->assertOutputPrePostShutdown( "foo\nbar\n", false );
}
function testOutputChanneledStringNLString() {
$this->m->outputChanneled( "foo\nbar" );
- $this->assertOutputPrePostShutdown( "foo\nbar\n", False );
+ $this->assertOutputPrePostShutdown( "foo\nbar\n", false );
}
function testOutputChanneledStringNLStringNLArbitraryAgain() {
@@ -484,28 +490,28 @@ class MaintenanceTest extends MediaWikiTestCase {
$this->m->outputChanneled( "a" );
$this->m->outputChanneled( "" );
$this->m->outputChanneled( "r" );
- $this->assertOutputPrePostShutdown( "\nfoo\n\n\nb\na\n\nr\n", False );
+ $this->assertOutputPrePostShutdown( "\nfoo\n\n\nb\na\n\nr\n", false );
}
function testOutputChanneledWNullChannelEmpty() {
$this->m->outputChanneled( "", null );
- $this->assertOutputPrePostShutdown( "\n", False );
+ $this->assertOutputPrePostShutdown( "\n", false );
}
function testOutputChanneledWNullChannelString() {
$this->m->outputChanneled( "foo", null );
- $this->assertOutputPrePostShutdown( "foo\n", False );
+ $this->assertOutputPrePostShutdown( "foo\n", false );
}
function testOutputChanneledWNullChannelStringString() {
$this->m->outputChanneled( "foo", null );
$this->m->outputChanneled( "bar", null );
- $this->assertOutputPrePostShutdown( "foo\nbar\n", False );
+ $this->assertOutputPrePostShutdown( "foo\nbar\n", false );
}
function testOutputChanneledWNullChannelStringNLString() {
$this->m->outputChanneled( "foo\nbar", null );
- $this->assertOutputPrePostShutdown( "foo\nbar\n", False );
+ $this->assertOutputPrePostShutdown( "foo\nbar\n", false );
}
function testOutputChanneledWNullChannelStringNLStringNLArbitraryAgain() {
@@ -516,23 +522,23 @@ class MaintenanceTest extends MediaWikiTestCase {
$this->m->outputChanneled( "a", null );
$this->m->outputChanneled( "", null );
$this->m->outputChanneled( "r", null );
- $this->assertOutputPrePostShutdown( "\nfoo\n\n\nb\na\n\nr\n", False );
+ $this->assertOutputPrePostShutdown( "\nfoo\n\n\nb\na\n\nr\n", false );
}
function testOutputChanneledWChannelString() {
$this->m->outputChanneled( "foo", "bazChannel" );
- $this->assertOutputPrePostShutdown( "foo", True );
+ $this->assertOutputPrePostShutdown( "foo", true );
}
function testOutputChanneledWChannelStringNLString() {
$this->m->outputChanneled( "foo\nbar", "bazChannel" );
- $this->assertOutputPrePostShutdown( "foo\nbar", True );
+ $this->assertOutputPrePostShutdown( "foo\nbar", true );
}
function testOutputChanneledWChannelStringString() {
$this->m->outputChanneled( "foo", "bazChannel" );
$this->m->outputChanneled( "bar", "bazChannel" );
- $this->assertOutputPrePostShutdown( "foobar", True );
+ $this->assertOutputPrePostShutdown( "foobar", true );
}
function testOutputChanneledWChannelStringNLStringNLArbitraryAgain() {
@@ -543,7 +549,7 @@ class MaintenanceTest extends MediaWikiTestCase {
$this->m->outputChanneled( "a", "bazChannel" );
$this->m->outputChanneled( "", "bazChannel" );
$this->m->outputChanneled( "r", "bazChannel" );
- $this->assertOutputPrePostShutdown( "foo\nbar", True );
+ $this->assertOutputPrePostShutdown( "foo\nbar", true );
}
function testOutputChanneledWMultipleChannelsChannelChange() {
@@ -551,7 +557,7 @@ class MaintenanceTest extends MediaWikiTestCase {
$this->m->outputChanneled( "bar", "bazChannel" );
$this->m->outputChanneled( "qux", "quuxChannel" );
$this->m->outputChanneled( "corge", "bazChannel" );
- $this->assertOutputPrePostShutdown( "foobar\nqux\ncorge", True );
+ $this->assertOutputPrePostShutdown( "foobar\nqux\ncorge", true );
}
function testOutputChanneledWMultipleChannelsChannelChangeEnclosedNull() {
@@ -559,7 +565,7 @@ class MaintenanceTest extends MediaWikiTestCase {
$this->m->outputChanneled( "bar", null );
$this->m->outputChanneled( "qux", null );
$this->m->outputChanneled( "corge", "bazChannel" );
- $this->assertOutputPrePostShutdown( "foo\nbar\nqux\ncorge", True );
+ $this->assertOutputPrePostShutdown( "foo\nbar\nqux\ncorge", true );
}
function testOutputChanneledWMultipleChannelsChannelAfterNullChange() {
@@ -567,7 +573,7 @@ class MaintenanceTest extends MediaWikiTestCase {
$this->m->outputChanneled( "bar", null );
$this->m->outputChanneled( "qux", null );
$this->m->outputChanneled( "corge", "quuxChannel" );
- $this->assertOutputPrePostShutdown( "foo\nbar\nqux\ncorge", True );
+ $this->assertOutputPrePostShutdown( "foo\nbar\nqux\ncorge", true );
}
function testOutputChanneledWAndWOChannelStringStartWO() {
@@ -575,7 +581,7 @@ class MaintenanceTest extends MediaWikiTestCase {
$this->m->outputChanneled( "bar", "bazChannel" );
$this->m->outputChanneled( "qux" );
$this->m->outputChanneled( "quux", "bazChannel" );
- $this->assertOutputPrePostShutdown( "foo\nbar\nqux\nquux", True );
+ $this->assertOutputPrePostShutdown( "foo\nbar\nqux\nquux", true );
}
function testOutputChanneledWAndWOChannelStringStartW() {
@@ -583,114 +589,114 @@ class MaintenanceTest extends MediaWikiTestCase {
$this->m->outputChanneled( "bar" );
$this->m->outputChanneled( "qux", "bazChannel" );
$this->m->outputChanneled( "quux" );
- $this->assertOutputPrePostShutdown( "foo\nbar\nqux\nquux\n", False );
+ $this->assertOutputPrePostShutdown( "foo\nbar\nqux\nquux\n", false );
}
function testOutputChanneledWChannelTypeSwitch() {
$this->m->outputChanneled( "foo", 1 );
$this->m->outputChanneled( "bar", 1.0 );
- $this->assertOutputPrePostShutdown( "foo\nbar", True );
+ $this->assertOutputPrePostShutdown( "foo\nbar", true );
}
function testOutputChanneledWOChannelIntermittentEmpty() {
$this->m->outputChanneled( "foo" );
$this->m->outputChanneled( "" );
$this->m->outputChanneled( "bar" );
- $this->assertOutputPrePostShutdown( "foo\n\nbar\n", False );
+ $this->assertOutputPrePostShutdown( "foo\n\nbar\n", false );
}
function testOutputChanneledWOChannelIntermittentFalse() {
$this->m->outputChanneled( "foo" );
$this->m->outputChanneled( false );
$this->m->outputChanneled( "bar" );
- $this->assertOutputPrePostShutdown( "foo\nbar\n", False );
+ $this->assertOutputPrePostShutdown( "foo\nbar\n", false );
}
function testOutputChanneledWNullChannelIntermittentEmpty() {
$this->m->outputChanneled( "foo", null );
$this->m->outputChanneled( "", null );
$this->m->outputChanneled( "bar", null );
- $this->assertOutputPrePostShutdown( "foo\n\nbar\n", False );
+ $this->assertOutputPrePostShutdown( "foo\n\nbar\n", false );
}
function testOutputChanneledWNullChannelIntermittentFalse() {
$this->m->outputChanneled( "foo", null );
$this->m->outputChanneled( false, null );
$this->m->outputChanneled( "bar", null );
- $this->assertOutputPrePostShutdown( "foo\nbar\n", False );
+ $this->assertOutputPrePostShutdown( "foo\nbar\n", false );
}
function testOutputChanneledWChannelIntermittentEmpty() {
$this->m->outputChanneled( "foo", "bazChannel" );
$this->m->outputChanneled( "", "bazChannel" );
$this->m->outputChanneled( "bar", "bazChannel" );
- $this->assertOutputPrePostShutdown( "foobar", True );
+ $this->assertOutputPrePostShutdown( "foobar", true );
}
function testOutputChanneledWChannelIntermittentFalse() {
$this->m->outputChanneled( "foo", "bazChannel" );
$this->m->outputChanneled( false, "bazChannel" );
$this->m->outputChanneled( "bar", "bazChannel" );
- $this->assertOutputPrePostShutdown( "foo\nbar", True );
+ $this->assertOutputPrePostShutdown( "foo\nbar", true );
}
function testCleanupChanneledClean() {
$this->m->cleanupChanneled();
- $this->assertOutputPrePostShutdown( "", False );
+ $this->assertOutputPrePostShutdown( "", false );
}
function testCleanupChanneledAfterOutput() {
$this->m->output( "foo" );
$this->m->cleanupChanneled();
- $this->assertOutputPrePostShutdown( "foo", False );
+ $this->assertOutputPrePostShutdown( "foo", false );
}
function testCleanupChanneledAfterOutputWNullChannel() {
$this->m->output( "foo", null );
$this->m->cleanupChanneled();
- $this->assertOutputPrePostShutdown( "foo", False );
+ $this->assertOutputPrePostShutdown( "foo", false );
}
function testCleanupChanneledAfterOutputWChannel() {
$this->m->output( "foo", "bazChannel" );
$this->m->cleanupChanneled();
- $this->assertOutputPrePostShutdown( "foo\n", False );
+ $this->assertOutputPrePostShutdown( "foo\n", false );
}
function testCleanupChanneledAfterNLOutput() {
$this->m->output( "foo\n" );
$this->m->cleanupChanneled();
- $this->assertOutputPrePostShutdown( "foo\n", False );
+ $this->assertOutputPrePostShutdown( "foo\n", false );
}
function testCleanupChanneledAfterNLOutputWNullChannel() {
$this->m->output( "foo\n", null );
$this->m->cleanupChanneled();
- $this->assertOutputPrePostShutdown( "foo\n", False );
+ $this->assertOutputPrePostShutdown( "foo\n", false );
}
function testCleanupChanneledAfterNLOutputWChannel() {
$this->m->output( "foo\n", "bazChannel" );
$this->m->cleanupChanneled();
- $this->assertOutputPrePostShutdown( "foo\n", False );
+ $this->assertOutputPrePostShutdown( "foo\n", false );
}
function testCleanupChanneledAfterOutputChanneledWOChannel() {
$this->m->outputChanneled( "foo" );
$this->m->cleanupChanneled();
- $this->assertOutputPrePostShutdown( "foo\n", False );
+ $this->assertOutputPrePostShutdown( "foo\n", false );
}
function testCleanupChanneledAfterOutputChanneledWNullChannel() {
$this->m->outputChanneled( "foo", null );
$this->m->cleanupChanneled();
- $this->assertOutputPrePostShutdown( "foo\n", False );
+ $this->assertOutputPrePostShutdown( "foo\n", false );
}
function testCleanupChanneledAfterOutputChanneledWChannel() {
$this->m->outputChanneled( "foo", "bazChannel" );
$this->m->cleanupChanneled();
- $this->assertOutputPrePostShutdown( "foo\n", False );
+ $this->assertOutputPrePostShutdown( "foo\n", false );
}
function testMultipleMaintenanceObjectsInteractionOutput() {
@@ -700,9 +706,9 @@ class MaintenanceTest extends MediaWikiTestCase {
$m2->output( "bar" );
$this->assertEquals( "foobar", $this->getActualOutput(),
- "Output before shutdown simulation (m2)" );
+ "Output before shutdown simulation (m2)" );
$m2->simulateShutdown();
- $this->assertOutputPrePostShutdown( "foobar", False );
+ $this->assertOutputPrePostShutdown( "foobar", false );
}
function testMultipleMaintenanceObjectsInteractionOutputWNullChannel() {
@@ -712,9 +718,9 @@ class MaintenanceTest extends MediaWikiTestCase {
$m2->output( "bar", null );
$this->assertEquals( "foobar", $this->getActualOutput(),
- "Output before shutdown simulation (m2)" );
+ "Output before shutdown simulation (m2)" );
$m2->simulateShutdown();
- $this->assertOutputPrePostShutdown( "foobar", False );
+ $this->assertOutputPrePostShutdown( "foobar", false );
}
function testMultipleMaintenanceObjectsInteractionOutputWChannel() {
@@ -724,9 +730,9 @@ class MaintenanceTest extends MediaWikiTestCase {
$m2->output( "bar", "bazChannel" );
$this->assertEquals( "foobar", $this->getActualOutput(),
- "Output before shutdown simulation (m2)" );
+ "Output before shutdown simulation (m2)" );
$m2->simulateShutdown();
- $this->assertOutputPrePostShutdown( "foobar\n", True );
+ $this->assertOutputPrePostShutdown( "foobar\n", true );
}
function testMultipleMaintenanceObjectsInteractionOutputWNullChannelNL() {
@@ -736,9 +742,9 @@ class MaintenanceTest extends MediaWikiTestCase {
$m2->output( "bar\n", null );
$this->assertEquals( "foo\nbar\n", $this->getActualOutput(),
- "Output before shutdown simulation (m2)" );
+ "Output before shutdown simulation (m2)" );
$m2->simulateShutdown();
- $this->assertOutputPrePostShutdown( "foo\nbar\n", False );
+ $this->assertOutputPrePostShutdown( "foo\nbar\n", false );
}
function testMultipleMaintenanceObjectsInteractionOutputWChannelNL() {
@@ -748,9 +754,9 @@ class MaintenanceTest extends MediaWikiTestCase {
$m2->output( "bar\n", "bazChannel" );
$this->assertEquals( "foobar", $this->getActualOutput(),
- "Output before shutdown simulation (m2)" );
+ "Output before shutdown simulation (m2)" );
$m2->simulateShutdown();
- $this->assertOutputPrePostShutdown( "foobar\n", True );
+ $this->assertOutputPrePostShutdown( "foobar\n", true );
}
function testMultipleMaintenanceObjectsInteractionOutputChanneled() {
@@ -760,9 +766,9 @@ class MaintenanceTest extends MediaWikiTestCase {
$m2->outputChanneled( "bar" );
$this->assertEquals( "foo\nbar\n", $this->getActualOutput(),
- "Output before shutdown simulation (m2)" );
+ "Output before shutdown simulation (m2)" );
$m2->simulateShutdown();
- $this->assertOutputPrePostShutdown( "foo\nbar\n", False );
+ $this->assertOutputPrePostShutdown( "foo\nbar\n", false );
}
function testMultipleMaintenanceObjectsInteractionOutputChanneledWNullChannel() {
@@ -772,9 +778,9 @@ class MaintenanceTest extends MediaWikiTestCase {
$m2->outputChanneled( "bar", null );
$this->assertEquals( "foo\nbar\n", $this->getActualOutput(),
- "Output before shutdown simulation (m2)" );
+ "Output before shutdown simulation (m2)" );
$m2->simulateShutdown();
- $this->assertOutputPrePostShutdown( "foo\nbar\n", False );
+ $this->assertOutputPrePostShutdown( "foo\nbar\n", false );
}
function testMultipleMaintenanceObjectsInteractionOutputChanneledWChannel() {
@@ -784,9 +790,9 @@ class MaintenanceTest extends MediaWikiTestCase {
$m2->outputChanneled( "bar", "bazChannel" );
$this->assertEquals( "foobar", $this->getActualOutput(),
- "Output before shutdown simulation (m2)" );
+ "Output before shutdown simulation (m2)" );
$m2->simulateShutdown();
- $this->assertOutputPrePostShutdown( "foobar\n", True );
+ $this->assertOutputPrePostShutdown( "foobar\n", true );
}
function testMultipleMaintenanceObjectsInteractionCleanupChanneledWChannel() {
@@ -796,17 +802,15 @@ class MaintenanceTest extends MediaWikiTestCase {
$m2->outputChanneled( "bar", "bazChannel" );
$this->assertEquals( "foobar", $this->getActualOutput(),
- "Output before first cleanup" );
+ "Output before first cleanup" );
$this->m->cleanupChanneled();
$this->assertEquals( "foobar\n", $this->getActualOutput(),
- "Output after first cleanup" );
+ "Output after first cleanup" );
$m2->cleanupChanneled();
$this->assertEquals( "foobar\n\n", $this->getActualOutput(),
- "Output after second cleanup" );
+ "Output after second cleanup" );
$m2->simulateShutdown();
- $this->assertOutputPrePostShutdown( "foobar\n\n", False );
+ $this->assertOutputPrePostShutdown( "foobar\n\n", false );
}
-
-
-} \ No newline at end of file
+}
diff --git a/tests/phpunit/maintenance/backupPrefetchTest.php b/tests/phpunit/maintenance/backupPrefetchTest.php
index 8ff85574..bc2d7375 100644
--- a/tests/phpunit/maintenance/backupPrefetchTest.php
+++ b/tests/phpunit/maintenance/backupPrefetchTest.php
@@ -36,7 +36,6 @@ class BaseDumpTest extends MediaWikiTestCase {
private function assertPrefetchEquals( $expected, $page, $revision ) {
$this->assertEquals( $expected, $this->dump->prefetch( $page, $revision ),
"Prefetch of page $page revision $revision" );
-
}
function testSequential() {
@@ -156,7 +155,7 @@ class BaseDumpTest extends MediaWikiTestCase {
<siteinfo>
<sitename>wikisvn</sitename>
<base>http://localhost/wiki-svn/index.php/Main_Page</base>
- <generator>MediaWiki 1.20alpha</generator>
+ <generator>MediaWiki 1.21alpha</generator>
<case>first-letter</case>
<namespaces>
<namespace key="-2" case="first-letter">Media</namespace>
@@ -181,7 +180,6 @@ class BaseDumpTest extends MediaWikiTestCase {
</siteinfo>
';
-
// An array holding the pages that are available for prefetch
$available_pages = array();
@@ -199,6 +197,8 @@ class BaseDumpTest extends MediaWikiTestCase {
<comment>BackupDumperTestP1Summary1</comment>
<sha1>0bolhl6ol7i6x0e7yq91gxgaan39j87</sha1>
<text xml:space="preserve">BackupDumperTestP1Text1</text>
+ <model name="wikitext">1</model>
+ <format mime="text/x-wiki">1</format>
</revision>
</page>
';
@@ -216,6 +216,8 @@ class BaseDumpTest extends MediaWikiTestCase {
<comment>BackupDumperTestP2Summary1</comment>
<sha1>jprywrymfhysqllua29tj3sc7z39dl2</sha1>
<text xml:space="preserve">BackupDumperTestP2Text1</text>
+ <model name="wikitext">1</model>
+ <format mime="text/x-wiki">1</format>
</revision>
<revision>
<id>5</id>
@@ -227,6 +229,8 @@ class BaseDumpTest extends MediaWikiTestCase {
<comment>BackupDumperTestP2Summary4 extra</comment>
<sha1>6o1ciaxa6pybnqprmungwofc4lv00wv</sha1>
<text xml:space="preserve">BackupDumperTestP2Text4 some additional Text</text>
+ <model name="wikitext">1</model>
+ <format mime="text/x-wiki">1</format>
</revision>
</page>
';
@@ -243,6 +247,8 @@ class BaseDumpTest extends MediaWikiTestCase {
</contributor>
<comment>Talk BackupDumperTestP1 Summary1</comment>
<sha1>nktofwzd0tl192k3zfepmlzxoax1lpe</sha1>
+ <model name="wikitext">1</model>
+ <format mime="text/x-wiki">1</format>
<text xml:space="preserve">Talk about BackupDumperTestP1 Text1</text>
</revision>
</page>
@@ -257,14 +263,13 @@ class BaseDumpTest extends MediaWikiTestCase {
foreach ( $requested_pages as $i ) {
$this->assertTrue( array_key_exists( $i, $available_pages ),
"Check for availability of requested page " . $i );
- $content .= $available_pages[ $i ];
+ $content .= $available_pages[$i];
}
$content .= $tail;
$this->assertEquals( strlen( $content ), file_put_contents(
- $fname, $content ), "Length of prepared prefetch" );
+ $fname, $content ), "Length of prepared prefetch" );
return $fname;
}
-
}
diff --git a/tests/phpunit/maintenance/backupTextPassTest.php b/tests/phpunit/maintenance/backupTextPassTest.php
index a0bbadf9..653a1145 100644
--- a/tests/phpunit/maintenance/backupTextPassTest.php
+++ b/tests/phpunit/maintenance/backupTextPassTest.php
@@ -26,16 +26,18 @@ class TextPassDumperTest extends DumpTestCase {
$this->tablesUsed[] = 'revision';
$this->tablesUsed[] = 'text';
+ $ns = $this->getDefaultWikitextNS();
+
try {
// Simple page
- $title = Title::newFromText( 'BackupDumperTestP1' );
+ $title = Title::newFromText( 'BackupDumperTestP1', $ns );
$page = WikiPage::factory( $title );
list( $this->revId1_1, $this->textId1_1 ) = $this->addRevision( $page,
"BackupDumperTestP1Text1", "BackupDumperTestP1Summary1" );
$this->pageId1 = $page->getId();
// Page with more than one revision
- $title = Title::newFromText( 'BackupDumperTestP2' );
+ $title = Title::newFromText( 'BackupDumperTestP2', $ns );
$page = WikiPage::factory( $title );
list( $this->revId2_1, $this->textId2_1 ) = $this->addRevision( $page,
"BackupDumperTestP2Text1", "BackupDumperTestP2Summary1" );
@@ -49,7 +51,7 @@ class TextPassDumperTest extends DumpTestCase {
$this->pageId2 = $page->getId();
// Deleted page.
- $title = Title::newFromText( 'BackupDumperTestP3' );
+ $title = Title::newFromText( 'BackupDumperTestP3', $ns );
$page = WikiPage::factory( $title );
list( $this->revId3_1, $this->textId3_1 ) = $this->addRevision( $page,
"BackupDumperTestP3Text1", "BackupDumperTestP2Summary1" );
@@ -59,6 +61,13 @@ class TextPassDumperTest extends DumpTestCase {
$page->doDeleteArticle( "Testing ;)" );
// Page from non-default namespace
+
+ if ( $ns === NS_TALK ) {
+ // @todo work around this.
+ throw new MWException( "The default wikitext namespace is the talk namespace. "
+ . " We can't currently deal with that." );
+ }
+
$title = Title::newFromText( 'BackupDumperTestP1', NS_TALK );
$page = WikiPage::factory( $title );
list( $this->revId4_1, $this->textId4_1 ) = $this->addRevision( $page,
@@ -71,10 +80,9 @@ class TextPassDumperTest extends DumpTestCase {
// DumpTestCase
$this->exceptionFromAddDBData = $e;
}
-
}
- public function setUp() {
+ protected function setUp() {
parent::setUp();
// Since we will restrict dumping by page ranges (to allow
@@ -85,15 +93,14 @@ class TextPassDumperTest extends DumpTestCase {
array( $this->pageId2, $this->pageId3, $this->pageId4 ),
array( $this->pageId1 + 1, $this->pageId2 + 1, $this->pageId3 + 1 ),
"Page ids increasing without holes" );
-
}
function testPlain() {
// Setting up the dump
$nameStub = $this->setUpStub();
$nameFull = $this->getNewTempFile();
- $dumper = new TextPassDumper( array ( "--stub=file:" . $nameStub,
- "--output=file:" . $nameFull ) );
+ $dumper = new TextPassDumper( array( "--stub=file:" . $nameStub,
+ "--output=file:" . $nameFull ) );
$dumper->reporting = false;
$dumper->setDb( $this->db );
@@ -147,7 +154,7 @@ class TextPassDumperTest extends DumpTestCase {
);
// The mock itself
- $prefetchMock = $this->getMock( 'BaseDump', array( 'prefetch' ), array(), '', FALSE );
+ $prefetchMock = $this->getMock( 'BaseDump', array( 'prefetch' ), array(), '', false );
$prefetchMock->expects( $this->exactly( 6 ) )
->method( 'prefetch' )
->will( $this->returnValueMap( $prefetchMap ) );
@@ -155,8 +162,8 @@ class TextPassDumperTest extends DumpTestCase {
// Setting up of the dump
$nameStub = $this->setUpStub();
$nameFull = $this->getNewTempFile();
- $dumper = new TextPassDumper( array ( "--stub=file:"
- . $nameStub, "--output=file:" . $nameFull ) );
+ $dumper = new TextPassDumper( array( "--stub=file:"
+ . $nameStub, "--output=file:" . $nameFull ) );
$dumper->prefetch = $prefetchMock;
$dumper->reporting = false;
$dumper->setDb( $this->db );
@@ -205,7 +212,6 @@ class TextPassDumperTest extends DumpTestCase {
$this->assertPageEnd();
$this->assertDumpEnd();
-
}
/**
@@ -221,7 +227,7 @@ class TextPassDumperTest extends DumpTestCase {
$nameOutputDir = $this->getNewTempDirectory();
$stderr = fopen( 'php://output', 'a' );
- if ( $stderr === FALSE ) {
+ if ( $stderr === false ) {
$this->fail( "Could not open stream for stderr" );
}
@@ -230,7 +236,6 @@ class TextPassDumperTest extends DumpTestCase {
$minDuration = 2; // We want the dump to take at least this many seconds
$checkpointAfter = 0.5; // Generate checkpoint after this many seconds
-
// Until a dump takes at least $minDuration seconds, perform a dump and check
// duration. If the dump did not take long enough increase the iteration
// count, to generate a bigger stub file next time.
@@ -241,10 +246,10 @@ class TextPassDumperTest extends DumpTestCase {
$this->assertTrue( wfMkdirParents( $nameOutputDir ),
"Creating temporary output directory " );
$this->setUpStub( $nameStub, $iterations );
- $dumper = new TextPassDumper( array ( "--stub=file:" . $nameStub,
- "--output=" . $checkpointFormat . ":" . $nameOutputDir . "/full",
- "--maxtime=1" /*This is in minutes. Fixup is below*/,
- "--checkpointfile=checkpoint-%s-%s.xml.gz" ) );
+ $dumper = new TextPassDumper( array( "--stub=file:" . $nameStub,
+ "--output=" . $checkpointFormat . ":" . $nameOutputDir . "/full",
+ "--maxtime=1" /*This is in minutes. Fixup is below*/,
+ "--checkpointfile=checkpoint-%s-%s.xml.gz" ) );
$dumper->setDb( $this->db );
$dumper->maxTimeAllowed = $checkpointAfter; // Patching maxTime from 1 minute
$dumper->stderr = $stderr;
@@ -274,7 +279,7 @@ class TextPassDumperTest extends DumpTestCase {
$this->assertLessThan( 50000, $iterations,
"Emergency stop against infinitely increasing iteration "
- . "count ( last duration: $lastDuration )" );
+ . "count ( last duration: $lastDuration )" );
}
}
@@ -291,11 +296,11 @@ class TextPassDumperTest extends DumpTestCase {
// Each run of the following loop body tries to handle exactly 1 /page/ (not
// iteration of stub content). $i is only increased after having treated page 4.
- for ( $i = 0 ; $i < $iterations ; ) {
+ for ( $i = 0; $i < $iterations; ) {
// 1. Assuring a file is opened and ready. Skipping across header if
// necessary.
- if ( ! $fileOpened ) {
+ if ( !$fileOpened ) {
$this->assertNotEmpty( $files, "No more existing dump files, "
. "but not yet all pages found" );
$fname = array_shift( $files );
@@ -314,65 +319,65 @@ class TextPassDumperTest extends DumpTestCase {
// 2. Performing a single page check
switch ( $lookingForPage ) {
- case 1:
- // Page 1
- $this->assertPageStart( $this->pageId1 + $i * self::$numOfPages, NS_MAIN,
- "BackupDumperTestP1" );
- $this->assertRevision( $this->revId1_1 + $i * self::$numOfRevs, "BackupDumperTestP1Summary1",
- $this->textId1_1, false, "0bolhl6ol7i6x0e7yq91gxgaan39j87",
- "BackupDumperTestP1Text1" );
- $this->assertPageEnd();
-
- $lookingForPage = 2;
- break;
-
- case 2:
- // Page 2
- $this->assertPageStart( $this->pageId2 + $i * self::$numOfPages, NS_MAIN,
- "BackupDumperTestP2" );
- $this->assertRevision( $this->revId2_1 + $i * self::$numOfRevs, "BackupDumperTestP2Summary1",
- $this->textId2_1, false, "jprywrymfhysqllua29tj3sc7z39dl2",
- "BackupDumperTestP2Text1" );
- $this->assertRevision( $this->revId2_2 + $i * self::$numOfRevs, "BackupDumperTestP2Summary2",
- $this->textId2_2, false, "b7vj5ks32po5m1z1t1br4o7scdwwy95",
- "BackupDumperTestP2Text2", $this->revId2_1 + $i * self::$numOfRevs );
- $this->assertRevision( $this->revId2_3 + $i * self::$numOfRevs, "BackupDumperTestP2Summary3",
- $this->textId2_3, false, "jfunqmh1ssfb8rs43r19w98k28gg56r",
- "BackupDumperTestP2Text3", $this->revId2_2 + $i * self::$numOfRevs );
- $this->assertRevision( $this->revId2_4 + $i * self::$numOfRevs,
- "BackupDumperTestP2Summary4 extra",
- $this->textId2_4, false, "6o1ciaxa6pybnqprmungwofc4lv00wv",
- "BackupDumperTestP2Text4 some additional Text",
- $this->revId2_3 + $i * self::$numOfRevs );
- $this->assertPageEnd();
-
- $lookingForPage = 4;
- break;
-
- case 4:
- // Page 4
- $this->assertPageStart( $this->pageId4 + $i * self::$numOfPages, NS_TALK,
- "Talk:BackupDumperTestP1" );
- $this->assertRevision( $this->revId4_1 + $i * self::$numOfRevs,
- "Talk BackupDumperTestP1 Summary1",
- $this->textId4_1, false, "nktofwzd0tl192k3zfepmlzxoax1lpe",
- "Talk about BackupDumperTestP1 Text1" );
- $this->assertPageEnd();
-
- $lookingForPage = 1;
-
- // We dealt with the whole iteration.
- $i++;
- break;
-
- default:
- $this->fail( "Bad setting for lookingForPage ($lookingForPage)" );
+ case 1:
+ // Page 1
+ $this->assertPageStart( $this->pageId1 + $i * self::$numOfPages, NS_MAIN,
+ "BackupDumperTestP1" );
+ $this->assertRevision( $this->revId1_1 + $i * self::$numOfRevs, "BackupDumperTestP1Summary1",
+ $this->textId1_1, false, "0bolhl6ol7i6x0e7yq91gxgaan39j87",
+ "BackupDumperTestP1Text1" );
+ $this->assertPageEnd();
+
+ $lookingForPage = 2;
+ break;
+
+ case 2:
+ // Page 2
+ $this->assertPageStart( $this->pageId2 + $i * self::$numOfPages, NS_MAIN,
+ "BackupDumperTestP2" );
+ $this->assertRevision( $this->revId2_1 + $i * self::$numOfRevs, "BackupDumperTestP2Summary1",
+ $this->textId2_1, false, "jprywrymfhysqllua29tj3sc7z39dl2",
+ "BackupDumperTestP2Text1" );
+ $this->assertRevision( $this->revId2_2 + $i * self::$numOfRevs, "BackupDumperTestP2Summary2",
+ $this->textId2_2, false, "b7vj5ks32po5m1z1t1br4o7scdwwy95",
+ "BackupDumperTestP2Text2", $this->revId2_1 + $i * self::$numOfRevs );
+ $this->assertRevision( $this->revId2_3 + $i * self::$numOfRevs, "BackupDumperTestP2Summary3",
+ $this->textId2_3, false, "jfunqmh1ssfb8rs43r19w98k28gg56r",
+ "BackupDumperTestP2Text3", $this->revId2_2 + $i * self::$numOfRevs );
+ $this->assertRevision( $this->revId2_4 + $i * self::$numOfRevs,
+ "BackupDumperTestP2Summary4 extra",
+ $this->textId2_4, false, "6o1ciaxa6pybnqprmungwofc4lv00wv",
+ "BackupDumperTestP2Text4 some additional Text",
+ $this->revId2_3 + $i * self::$numOfRevs );
+ $this->assertPageEnd();
+
+ $lookingForPage = 4;
+ break;
+
+ case 4:
+ // Page 4
+ $this->assertPageStart( $this->pageId4 + $i * self::$numOfPages, NS_TALK,
+ "Talk:BackupDumperTestP1" );
+ $this->assertRevision( $this->revId4_1 + $i * self::$numOfRevs,
+ "Talk BackupDumperTestP1 Summary1",
+ $this->textId4_1, false, "nktofwzd0tl192k3zfepmlzxoax1lpe",
+ "Talk about BackupDumperTestP1 Text1" );
+ $this->assertPageEnd();
+
+ $lookingForPage = 1;
+
+ // We dealt with the whole iteration.
+ $i++;
+ break;
+
+ default:
+ $this->fail( "Bad setting for lookingForPage ($lookingForPage)" );
}
// 3. Checking for the end of the current checkpoint file
if ( $this->xml->nodeType == XMLReader::END_ELEMENT
- && $this->xml->name == "mediawiki" ) {
-
+ && $this->xml->name == "mediawiki"
+ ) {
$this->assertDumpEnd();
$fileOpened = false;
}
@@ -383,7 +388,7 @@ class TextPassDumperTest extends DumpTestCase {
$this->assertEmpty( $files, "Remaining unchecked files" );
// ... and have dealt with more than one checkpoint file
- $this->assertGreaterThan( 1, $checkpointFiles, "# of checkpoint files" );
+ $this->assertGreaterThan( 1, $checkpointFiles, "expected more than 1 checkpoint to have been created. Checkpoint interval is $checkpointAfter seconds, maybe your computer is too fast?" );
$this->expectETAOutput();
}
@@ -408,6 +413,7 @@ class TextPassDumperTest extends DumpTestCase {
* @group large
*/
function testCheckpointGzip() {
+ $this->checkHasGzip();
$this->checkpointHelper( "gzip" );
}
@@ -438,7 +444,7 @@ class TextPassDumperTest extends DumpTestCase {
<siteinfo>
<sitename>wikisvn</sitename>
<base>http://localhost/wiki-svn/index.php/Main_Page</base>
- <generator>MediaWiki 1.20alpha</generator>
+ <generator>MediaWiki 1.21alpha</generator>
<case>first-letter</case>
<namespaces>
<namespace key="-2" case="first-letter">Media</namespace>
@@ -481,6 +487,8 @@ class TextPassDumperTest extends DumpTestCase {
</contributor>
<comment>BackupDumperTestP1Summary1</comment>
<sha1>0bolhl6ol7i6x0e7yq91gxgaan39j87</sha1>
+ <model>wikitext</model>
+ <format>text/x-wiki</format>
<text id="' . $this->textId1_1 . '" bytes="23" />
</revision>
</page>
@@ -497,6 +505,8 @@ class TextPassDumperTest extends DumpTestCase {
</contributor>
<comment>BackupDumperTestP2Summary1</comment>
<sha1>jprywrymfhysqllua29tj3sc7z39dl2</sha1>
+ <model>wikitext</model>
+ <format>text/x-wiki</format>
<text id="' . $this->textId2_1 . '" bytes="23" />
</revision>
<revision>
@@ -508,6 +518,8 @@ class TextPassDumperTest extends DumpTestCase {
</contributor>
<comment>BackupDumperTestP2Summary2</comment>
<sha1>b7vj5ks32po5m1z1t1br4o7scdwwy95</sha1>
+ <model>wikitext</model>
+ <format>text/x-wiki</format>
<text id="' . $this->textId2_2 . '" bytes="23" />
</revision>
<revision>
@@ -519,6 +531,8 @@ class TextPassDumperTest extends DumpTestCase {
</contributor>
<comment>BackupDumperTestP2Summary3</comment>
<sha1>jfunqmh1ssfb8rs43r19w98k28gg56r</sha1>
+ <model>wikitext</model>
+ <format>text/x-wiki</format>
<text id="' . $this->textId2_3 . '" bytes="23" />
</revision>
<revision>
@@ -530,6 +544,8 @@ class TextPassDumperTest extends DumpTestCase {
</contributor>
<comment>BackupDumperTestP2Summary4 extra</comment>
<sha1>6o1ciaxa6pybnqprmungwofc4lv00wv</sha1>
+ <model>wikitext</model>
+ <format>text/x-wiki</format>
<text id="' . $this->textId2_4 . '" bytes="44" />
</revision>
</page>
@@ -548,6 +564,8 @@ class TextPassDumperTest extends DumpTestCase {
</contributor>
<comment>Talk BackupDumperTestP1 Summary1</comment>
<sha1>nktofwzd0tl192k3zfepmlzxoax1lpe</sha1>
+ <model>wikitext</model>
+ <format>text/x-wiki</format>
<text id="' . $this->textId4_1 . '" bytes="35" />
</revision>
</page>
@@ -556,8 +574,8 @@ class TextPassDumperTest extends DumpTestCase {
}
$content .= $tail;
$this->assertEquals( strlen( $content ), file_put_contents(
- $fname, $content ), "Length of prepared stub" );
+ $fname, $content ), "Length of prepared stub" );
+
return $fname;
}
-
}
diff --git a/tests/phpunit/maintenance/backup_LogTest.php b/tests/phpunit/maintenance/backup_LogTest.php
index 8a8dea5a..98d81653 100644
--- a/tests/phpunit/maintenance/backup_LogTest.php
+++ b/tests/phpunit/maintenance/backup_LogTest.php
@@ -28,18 +28,19 @@ class BackupDumperLoggerTest extends DumpTestCase {
* @return int id of the added log entry
*/
private function addLogEntry( $type, $subtype, User $user, $ns, $title,
- $comment = null, $parameters = null ) {
-
- $logEntry = new ManualLogEntry( $type, $subtype );
+ $comment = null, $parameters = null
+ ) {
+ $logEntry = new ManualLogEntry( $type, $subtype );
$logEntry->setPerformer( $user );
$logEntry->setTarget( Title::newFromText( $title, $ns ) );
- if ( $comment !== null ) {
+ if ( $comment !== null ) {
$logEntry->setComment( $comment );
}
- if ( $parameters !== null ) {
+ if ( $parameters !== null ) {
$logEntry->setParameters( $parameters );
}
- return $logEntry->insert();
+
+ return $logEntry->insert();
}
function addDBData() {
@@ -73,16 +74,14 @@ class BackupDumperLoggerTest extends DumpTestCase {
$this->logId3 = $this->addLogEntry( 'move', 'delete',
$user2, NS_MAIN, "PageA", "SomeOtherComment",
- array( 'key1' => 1, 3 => 'value3' ) );
+ array( 'key1' => 1, 3 => 'value3' ) );
$this->assertGreaterThan( 0, $this->logId3 );
-
} catch ( Exception $e ) {
// We'd love to pass $e directly. However, ... see
// documentation of exceptionFromAddDBData in
// DumpTestCase
$this->exceptionFromAddDBData = $e;
}
-
}
@@ -101,7 +100,8 @@ class BackupDumperLoggerTest extends DumpTestCase {
* @param $parameters array: (optional) unserialized data accompanying the log entry
*/
private function assertLogItem( $id, $user_name, $user_id, $comment, $type,
- $subtype, $title, $parameters = array() ) {
+ $subtype, $title, $parameters = array()
+ ) {
$this->assertNodeStart( "logitem" );
$this->skipWhitespace();
@@ -134,12 +134,12 @@ class BackupDumperLoggerTest extends DumpTestCase {
$this->skipWhitespace();
}
- function testPlain () {
+ function testPlain() {
global $wgContLang;
// Preparing the dump
$fname = $this->getNewTempFile();
- $dumper = new BackupDumper( array ( "--output=file:" . $fname ) );
+ $dumper = new BackupDumper( array( "--output=file:" . $fname ) );
$dumper->startId = $this->logId1;
$dumper->endId = $this->logId3 + 1;
$dumper->reporting = false;
@@ -172,10 +172,12 @@ class BackupDumperLoggerTest extends DumpTestCase {
function testXmlDumpsBackupUseCaseLogging() {
global $wgContLang;
+ $this->checkHasGzip();
+
// Preparing the dump
$fname = $this->getNewTempFile();
- $dumper = new BackupDumper( array ( "--output=gzip:" . $fname,
- "--reporting=2" ) );
+ $dumper = new BackupDumper( array( "--output=gzip:" . $fname,
+ "--reporting=2" ) );
$dumper->startId = $this->logId1;
$dumper->endId = $this->logId3 + 1;
$dumper->setDb( $this->db );
@@ -186,7 +188,7 @@ class BackupDumperLoggerTest extends DumpTestCase {
// to be able to alert (once dumping produces reports) that this test
// needs updates.
$dumper->stderr = fopen( 'php://output', 'a' );
- if ( $dumper->stderr === FALSE ) {
+ if ( $dumper->stderr === false ) {
$this->fail( "Could not open stream for stderr" );
}
@@ -223,5 +225,4 @@ class BackupDumperLoggerTest extends DumpTestCase {
// the following statement to catch good output
$this->expectOutputString( '' );
}
-
}
diff --git a/tests/phpunit/maintenance/backup_PageTest.php b/tests/phpunit/maintenance/backup_PageTest.php
index 925e277d..99bd2700 100644
--- a/tests/phpunit/maintenance/backup_PageTest.php
+++ b/tests/phpunit/maintenance/backup_PageTest.php
@@ -10,26 +10,43 @@ class BackupDumperPageTest extends DumpTestCase {
// We'll add several pages, revision and texts. The following variables hold the
// corresponding ids.
private $pageId1, $pageId2, $pageId3, $pageId4, $pageId5;
+ private $pageTitle1, $pageTitle2, $pageTitle3, $pageTitle4, $pageTitle5;
private $revId1_1, $textId1_1;
private $revId2_1, $textId2_1, $revId2_2, $textId2_2;
private $revId2_3, $textId2_3, $revId2_4, $textId2_4;
private $revId3_1, $textId3_1, $revId3_2, $textId3_2;
private $revId4_1, $textId4_1;
+ private $namespace, $talk_namespace;
function addDBData() {
+ // be sure, titles created here using english namespace names
+ $this->setMwGlobals( array(
+ 'wgLanguageCode' => 'en',
+ 'wgContLang' => Language::factory( 'en' ),
+ ) );
+
$this->tablesUsed[] = 'page';
$this->tablesUsed[] = 'revision';
$this->tablesUsed[] = 'text';
try {
- $title = Title::newFromText( 'BackupDumperTestP1' );
- $page = WikiPage::factory( $title );
+ $this->namespace = $this->getDefaultWikitextNS();
+ $this->talk_namespace = NS_TALK;
+
+ if ( $this->namespace === $this->talk_namespace ) {
+ // @todo work around this.
+ throw new MWException( "The default wikitext namespace is the talk namespace. "
+ . " We can't currently deal with that." );
+ }
+
+ $this->pageTitle1 = Title::newFromText( 'BackupDumperTestP1', $this->namespace );
+ $page = WikiPage::factory( $this->pageTitle1 );
list( $this->revId1_1, $this->textId1_1 ) = $this->addRevision( $page,
"BackupDumperTestP1Text1", "BackupDumperTestP1Summary1" );
$this->pageId1 = $page->getId();
- $title = Title::newFromText( 'BackupDumperTestP2' );
- $page = WikiPage::factory( $title );
+ $this->pageTitle2 = Title::newFromText( 'BackupDumperTestP2', $this->namespace );
+ $page = WikiPage::factory( $this->pageTitle2 );
list( $this->revId2_1, $this->textId2_1 ) = $this->addRevision( $page,
"BackupDumperTestP2Text1", "BackupDumperTestP2Summary1" );
list( $this->revId2_2, $this->textId2_2 ) = $this->addRevision( $page,
@@ -41,8 +58,8 @@ class BackupDumperPageTest extends DumpTestCase {
"BackupDumperTestP2Summary4 extra " );
$this->pageId2 = $page->getId();
- $title = Title::newFromText( 'BackupDumperTestP3' );
- $page = WikiPage::factory( $title );
+ $this->pageTitle3 = Title::newFromText( 'BackupDumperTestP3', $this->namespace );
+ $page = WikiPage::factory( $this->pageTitle3 );
list( $this->revId3_1, $this->textId3_1 ) = $this->addRevision( $page,
"BackupDumperTestP3Text1", "BackupDumperTestP2Summary1" );
list( $this->revId3_2, $this->textId3_2 ) = $this->addRevision( $page,
@@ -50,8 +67,8 @@ class BackupDumperPageTest extends DumpTestCase {
$this->pageId3 = $page->getId();
$page->doDeleteArticle( "Testing ;)" );
- $title = Title::newFromText( 'BackupDumperTestP1', NS_TALK );
- $page = WikiPage::factory( $title );
+ $this->pageTitle4 = Title::newFromText( 'BackupDumperTestP1', $this->talk_namespace );
+ $page = WikiPage::factory( $this->pageTitle4 );
list( $this->revId4_1, $this->textId4_1 ) = $this->addRevision( $page,
"Talk about BackupDumperTestP1 Text1",
"Talk BackupDumperTestP1 Summary1" );
@@ -62,10 +79,9 @@ class BackupDumperPageTest extends DumpTestCase {
// DumpTestCase
$this->exceptionFromAddDBData = $e;
}
-
}
- public function setUp() {
+ protected function setUp() {
parent::setUp();
// Since we will restrict dumping by page ranges (to allow
@@ -76,13 +92,12 @@ class BackupDumperPageTest extends DumpTestCase {
array( $this->pageId2, $this->pageId3, $this->pageId4 ),
array( $this->pageId1 + 1, $this->pageId2 + 1, $this->pageId3 + 1 ),
"Page ids increasing without holes" );
-
}
- function testFullTextPlain () {
+ function testFullTextPlain() {
// Preparing the dump
$fname = $this->getNewTempFile();
- $dumper = new BackupDumper( array ( "--output=file:" . $fname ) );
+ $dumper = new BackupDumper( array( "--output=file:" . $fname ) );
$dumper->startId = $this->pageId1;
$dumper->endId = $this->pageId4 + 1;
$dumper->reporting = false;
@@ -95,14 +110,14 @@ class BackupDumperPageTest extends DumpTestCase {
$this->assertDumpStart( $fname );
// Page 1
- $this->assertPageStart( $this->pageId1, NS_MAIN, "BackupDumperTestP1" );
+ $this->assertPageStart( $this->pageId1, $this->namespace, $this->pageTitle1->getPrefixedText() );
$this->assertRevision( $this->revId1_1, "BackupDumperTestP1Summary1",
$this->textId1_1, 23, "0bolhl6ol7i6x0e7yq91gxgaan39j87",
"BackupDumperTestP1Text1" );
$this->assertPageEnd();
// Page 2
- $this->assertPageStart( $this->pageId2, NS_MAIN, "BackupDumperTestP2" );
+ $this->assertPageStart( $this->pageId2, $this->namespace, $this->pageTitle2->getPrefixedText() );
$this->assertRevision( $this->revId2_1, "BackupDumperTestP2Summary1",
$this->textId2_1, 23, "jprywrymfhysqllua29tj3sc7z39dl2",
"BackupDumperTestP2Text1" );
@@ -121,7 +136,7 @@ class BackupDumperPageTest extends DumpTestCase {
// -> Page is marked deleted. Hence not visible
// Page 4
- $this->assertPageStart( $this->pageId4, NS_TALK, "Talk:BackupDumperTestP1" );
+ $this->assertPageStart( $this->pageId4, $this->talk_namespace, $this->pageTitle4->getPrefixedText() );
$this->assertRevision( $this->revId4_1, "Talk BackupDumperTestP1 Summary1",
$this->textId4_1, 35, "nktofwzd0tl192k3zfepmlzxoax1lpe",
"Talk about BackupDumperTestP1 Text1" );
@@ -130,10 +145,10 @@ class BackupDumperPageTest extends DumpTestCase {
$this->assertDumpEnd();
}
- function testFullStubPlain () {
+ function testFullStubPlain() {
// Preparing the dump
$fname = $this->getNewTempFile();
- $dumper = new BackupDumper( array ( "--output=file:" . $fname ) );
+ $dumper = new BackupDumper( array( "--output=file:" . $fname ) );
$dumper->startId = $this->pageId1;
$dumper->endId = $this->pageId4 + 1;
$dumper->reporting = false;
@@ -146,13 +161,13 @@ class BackupDumperPageTest extends DumpTestCase {
$this->assertDumpStart( $fname );
// Page 1
- $this->assertPageStart( $this->pageId1, NS_MAIN, "BackupDumperTestP1" );
+ $this->assertPageStart( $this->pageId1, $this->namespace, $this->pageTitle1->getPrefixedText() );
$this->assertRevision( $this->revId1_1, "BackupDumperTestP1Summary1",
$this->textId1_1, 23, "0bolhl6ol7i6x0e7yq91gxgaan39j87" );
$this->assertPageEnd();
// Page 2
- $this->assertPageStart( $this->pageId2, NS_MAIN, "BackupDumperTestP2" );
+ $this->assertPageStart( $this->pageId2, $this->namespace, $this->pageTitle2->getPrefixedText() );
$this->assertRevision( $this->revId2_1, "BackupDumperTestP2Summary1",
$this->textId2_1, 23, "jprywrymfhysqllua29tj3sc7z39dl2" );
$this->assertRevision( $this->revId2_2, "BackupDumperTestP2Summary2",
@@ -167,7 +182,7 @@ class BackupDumperPageTest extends DumpTestCase {
// -> Page is marked deleted. Hence not visible
// Page 4
- $this->assertPageStart( $this->pageId4, NS_TALK, "Talk:BackupDumperTestP1" );
+ $this->assertPageStart( $this->pageId4, $this->talk_namespace, $this->pageTitle4->getPrefixedText() );
$this->assertRevision( $this->revId4_1, "Talk BackupDumperTestP1 Summary1",
$this->textId4_1, 35, "nktofwzd0tl192k3zfepmlzxoax1lpe" );
$this->assertPageEnd();
@@ -175,10 +190,10 @@ class BackupDumperPageTest extends DumpTestCase {
$this->assertDumpEnd();
}
- function testCurrentStubPlain () {
+ function testCurrentStubPlain() {
// Preparing the dump
$fname = $this->getNewTempFile();
- $dumper = new BackupDumper( array ( "--output=file:" . $fname ) );
+ $dumper = new BackupDumper( array( "--output=file:" . $fname ) );
$dumper->startId = $this->pageId1;
$dumper->endId = $this->pageId4 + 1;
$dumper->reporting = false;
@@ -191,13 +206,13 @@ class BackupDumperPageTest extends DumpTestCase {
$this->assertDumpStart( $fname );
// Page 1
- $this->assertPageStart( $this->pageId1, NS_MAIN, "BackupDumperTestP1" );
+ $this->assertPageStart( $this->pageId1, $this->namespace, $this->pageTitle1->getPrefixedText() );
$this->assertRevision( $this->revId1_1, "BackupDumperTestP1Summary1",
$this->textId1_1, 23, "0bolhl6ol7i6x0e7yq91gxgaan39j87" );
$this->assertPageEnd();
// Page 2
- $this->assertPageStart( $this->pageId2, NS_MAIN, "BackupDumperTestP2" );
+ $this->assertPageStart( $this->pageId2, $this->namespace, $this->pageTitle2->getPrefixedText() );
$this->assertRevision( $this->revId2_4, "BackupDumperTestP2Summary4 extra",
$this->textId2_4, 44, "6o1ciaxa6pybnqprmungwofc4lv00wv", false, $this->revId2_3 );
$this->assertPageEnd();
@@ -206,7 +221,7 @@ class BackupDumperPageTest extends DumpTestCase {
// -> Page is marked deleted. Hence not visible
// Page 4
- $this->assertPageStart( $this->pageId4, NS_TALK, "Talk:BackupDumperTestP1" );
+ $this->assertPageStart( $this->pageId4, $this->talk_namespace, $this->pageTitle4->getPrefixedText() );
$this->assertRevision( $this->revId4_1, "Talk BackupDumperTestP1 Summary1",
$this->textId4_1, 35, "nktofwzd0tl192k3zfepmlzxoax1lpe" );
$this->assertPageEnd();
@@ -214,10 +229,12 @@ class BackupDumperPageTest extends DumpTestCase {
$this->assertDumpEnd();
}
- function testCurrentStubGzip () {
+ function testCurrentStubGzip() {
+ $this->checkHasGzip();
+
// Preparing the dump
$fname = $this->getNewTempFile();
- $dumper = new BackupDumper( array ( "--output=gzip:" . $fname ) );
+ $dumper = new BackupDumper( array( "--output=gzip:" . $fname ) );
$dumper->startId = $this->pageId1;
$dumper->endId = $this->pageId4 + 1;
$dumper->reporting = false;
@@ -231,13 +248,13 @@ class BackupDumperPageTest extends DumpTestCase {
$this->assertDumpStart( $fname );
// Page 1
- $this->assertPageStart( $this->pageId1, NS_MAIN, "BackupDumperTestP1" );
+ $this->assertPageStart( $this->pageId1, $this->namespace, $this->pageTitle1->getPrefixedText() );
$this->assertRevision( $this->revId1_1, "BackupDumperTestP1Summary1",
$this->textId1_1, 23, "0bolhl6ol7i6x0e7yq91gxgaan39j87" );
$this->assertPageEnd();
// Page 2
- $this->assertPageStart( $this->pageId2, NS_MAIN, "BackupDumperTestP2" );
+ $this->assertPageStart( $this->pageId2, $this->namespace, $this->pageTitle2->getPrefixedText() );
$this->assertRevision( $this->revId2_4, "BackupDumperTestP2Summary4 extra",
$this->textId2_4, 44, "6o1ciaxa6pybnqprmungwofc4lv00wv", false, $this->revId2_3 );
$this->assertPageEnd();
@@ -246,7 +263,7 @@ class BackupDumperPageTest extends DumpTestCase {
// -> Page is marked deleted. Hence not visible
// Page 4
- $this->assertPageStart( $this->pageId4, NS_TALK, "Talk:BackupDumperTestP1" );
+ $this->assertPageStart( $this->pageId4, $this->talk_namespace, $this->pageTitle4->getPrefixedText() );
$this->assertRevision( $this->revId4_1, "Talk BackupDumperTestP1 Summary1",
$this->textId4_1, 35, "nktofwzd0tl192k3zfepmlzxoax1lpe" );
$this->assertPageEnd();
@@ -255,8 +272,7 @@ class BackupDumperPageTest extends DumpTestCase {
}
-
- function testXmlDumpsBackupUseCase () {
+ function testXmlDumpsBackupUseCase() {
// xmldumps-backup typically performs a single dump that that writes
// out three files
// * gzipped stubs of everything (meta-history)
@@ -267,15 +283,17 @@ class BackupDumperPageTest extends DumpTestCase {
// We reproduce such a setup with our mini fixture, although we omit
// chunks, and all the other gimmicks of xmldumps-backup.
//
+ $this->checkHasGzip();
+
$fnameMetaHistory = $this->getNewTempFile();
$fnameMetaCurrent = $this->getNewTempFile();
$fnameArticles = $this->getNewTempFile();
- $dumper = new BackupDumper( array ( "--output=gzip:" . $fnameMetaHistory,
- "--output=gzip:" . $fnameMetaCurrent, "--filter=latest",
- "--output=gzip:" . $fnameArticles, "--filter=latest",
- "--filter=notalk", "--filter=namespace:!NS_USER",
- "--reporting=1000" ) );
+ $dumper = new BackupDumper( array( "--output=gzip:" . $fnameMetaHistory,
+ "--output=gzip:" . $fnameMetaCurrent, "--filter=latest",
+ "--output=gzip:" . $fnameArticles, "--filter=latest",
+ "--filter=notalk", "--filter=namespace:!NS_USER",
+ "--reporting=1000" ) );
$dumper->startId = $this->pageId1;
$dumper->endId = $this->pageId4 + 1;
$dumper->setDb( $this->db );
@@ -285,7 +303,7 @@ class BackupDumperPageTest extends DumpTestCase {
// computer. We only check that reporting does not crash the dumping
// and that something is reported
$dumper->stderr = fopen( 'php://output', 'a' );
- if ( $dumper->stderr === FALSE ) {
+ if ( $dumper->stderr === false ) {
$this->fail( "Could not open stream for stderr" );
}
@@ -300,13 +318,13 @@ class BackupDumperPageTest extends DumpTestCase {
$this->assertDumpStart( $fnameMetaHistory );
// Page 1
- $this->assertPageStart( $this->pageId1, NS_MAIN, "BackupDumperTestP1" );
+ $this->assertPageStart( $this->pageId1, $this->namespace, $this->pageTitle1->getPrefixedText() );
$this->assertRevision( $this->revId1_1, "BackupDumperTestP1Summary1",
$this->textId1_1, 23, "0bolhl6ol7i6x0e7yq91gxgaan39j87" );
$this->assertPageEnd();
// Page 2
- $this->assertPageStart( $this->pageId2, NS_MAIN, "BackupDumperTestP2" );
+ $this->assertPageStart( $this->pageId2, $this->namespace, $this->pageTitle2->getPrefixedText() );
$this->assertRevision( $this->revId2_1, "BackupDumperTestP2Summary1",
$this->textId2_1, 23, "jprywrymfhysqllua29tj3sc7z39dl2" );
$this->assertRevision( $this->revId2_2, "BackupDumperTestP2Summary2",
@@ -321,7 +339,7 @@ class BackupDumperPageTest extends DumpTestCase {
// -> Page is marked deleted. Hence not visible
// Page 4
- $this->assertPageStart( $this->pageId4, NS_TALK, "Talk:BackupDumperTestP1" );
+ $this->assertPageStart( $this->pageId4, $this->talk_namespace, $this->pageTitle4->getPrefixedText() );
$this->assertRevision( $this->revId4_1, "Talk BackupDumperTestP1 Summary1",
$this->textId4_1, 35, "nktofwzd0tl192k3zfepmlzxoax1lpe" );
$this->assertPageEnd();
@@ -334,13 +352,13 @@ class BackupDumperPageTest extends DumpTestCase {
$this->assertDumpStart( $fnameMetaCurrent );
// Page 1
- $this->assertPageStart( $this->pageId1, NS_MAIN, "BackupDumperTestP1" );
+ $this->assertPageStart( $this->pageId1, $this->namespace, $this->pageTitle1->getPrefixedText() );
$this->assertRevision( $this->revId1_1, "BackupDumperTestP1Summary1",
$this->textId1_1, 23, "0bolhl6ol7i6x0e7yq91gxgaan39j87" );
$this->assertPageEnd();
// Page 2
- $this->assertPageStart( $this->pageId2, NS_MAIN, "BackupDumperTestP2" );
+ $this->assertPageStart( $this->pageId2, $this->namespace, $this->pageTitle2->getPrefixedText() );
$this->assertRevision( $this->revId2_4, "BackupDumperTestP2Summary4 extra",
$this->textId2_4, 44, "6o1ciaxa6pybnqprmungwofc4lv00wv", false, $this->revId2_3 );
$this->assertPageEnd();
@@ -349,7 +367,7 @@ class BackupDumperPageTest extends DumpTestCase {
// -> Page is marked deleted. Hence not visible
// Page 4
- $this->assertPageStart( $this->pageId4, NS_TALK, "Talk:BackupDumperTestP1" );
+ $this->assertPageStart( $this->pageId4, $this->talk_namespace, $this->pageTitle4->getPrefixedText() );
$this->assertRevision( $this->revId4_1, "Talk BackupDumperTestP1 Summary1",
$this->textId4_1, 35, "nktofwzd0tl192k3zfepmlzxoax1lpe" );
$this->assertPageEnd();
@@ -362,13 +380,13 @@ class BackupDumperPageTest extends DumpTestCase {
$this->assertDumpStart( $fnameArticles );
// Page 1
- $this->assertPageStart( $this->pageId1, NS_MAIN, "BackupDumperTestP1" );
+ $this->assertPageStart( $this->pageId1, $this->namespace, $this->pageTitle1->getPrefixedText() );
$this->assertRevision( $this->revId1_1, "BackupDumperTestP1Summary1",
$this->textId1_1, 23, "0bolhl6ol7i6x0e7yq91gxgaan39j87" );
$this->assertPageEnd();
// Page 2
- $this->assertPageStart( $this->pageId2, NS_MAIN, "BackupDumperTestP2" );
+ $this->assertPageStart( $this->pageId2, $this->namespace, $this->pageTitle2->getPrefixedText() );
$this->assertRevision( $this->revId2_4, "BackupDumperTestP2Summary4 extra",
$this->textId2_4, 44, "6o1ciaxa6pybnqprmungwofc4lv00wv", false, $this->revId2_3 );
$this->assertPageEnd();
@@ -377,13 +395,10 @@ class BackupDumperPageTest extends DumpTestCase {
// -> Page is marked deleted. Hence not visible
// Page 4
- // -> Page is not in NS_MAIN. Hence not visible
+ // -> Page is not in $this->namespace. Hence not visible
$this->assertDumpEnd();
$this->expectETAOutput();
}
-
-
-
}
diff --git a/tests/phpunit/maintenance/fetchTextTest.php b/tests/phpunit/maintenance/fetchTextTest.php
index e7ffa01c..e8df199e 100644
--- a/tests/phpunit/maintenance/fetchTextTest.php
+++ b/tests/phpunit/maintenance/fetchTextTest.php
@@ -18,7 +18,7 @@ class SemiMockedFetchText extends FetchText {
/**
* @var bool Whether or not a text for stdin has been provided
*/
- private $mockSetUp = False;
+ private $mockSetUp = false;
/**
* @var Array Invocation counters for the mocked aspects
@@ -26,16 +26,14 @@ class SemiMockedFetchText extends FetchText {
private $mockInvocations = array( 'getStdin' => 0 );
-
/**
* Data for the fake stdin
*
* @param $stdin String The string to be used instead of stdin
*/
- function mockStdin( $stdin )
- {
+ function mockStdin( $stdin ) {
$this->mockStdinText = $stdin;
- $this->mockSetUp = True;
+ $this->mockSetUp = true;
}
/**
@@ -44,30 +42,27 @@ class SemiMockedFetchText extends FetchText {
* @return Array An array, whose keys are function names. The corresponding values
* denote the number of times the function has been invoked.
*/
- function mockGetInvocations()
- {
+ function mockGetInvocations() {
return $this->mockInvocations;
}
// -----------------------------------------------------------------
// Mocked functions from FetchText follow.
- function getStdin( $len = null )
- {
+ function getStdin( $len = null ) {
$this->mockInvocations['getStdin']++;
if ( $len !== null ) {
throw new PHPUnit_Framework_ExpectationFailedException(
"Tried to get stdin with non null parameter" );
}
- if ( ! $this->mockSetUp ) {
+ if ( !$this->mockSetUp ) {
throw new PHPUnit_Framework_ExpectationFailedException(
"Tried to get stdin before setting up rerouting" );
}
return fopen( 'data://text/plain,' . $this->mockStdinText, 'r' );
}
-
}
/**
@@ -111,7 +106,7 @@ class FetchTextTest extends MediaWikiTestCase {
* @throws MWExcepion
*/
private function addRevision( $page, $text, $summary ) {
- $status = $page->doEdit( $text, $summary );
+ $status = $page->doEditContent( ContentHandler::makeContent( $text, $page->getTitle() ), $summary );
if ( $status->isGood() ) {
$value = $status->getValue();
$revision = $value['revision'];
@@ -129,12 +124,14 @@ class FetchTextTest extends MediaWikiTestCase {
$this->tablesUsed[] = 'revision';
$this->tablesUsed[] = 'text';
+ $wikitextNamespace = $this->getDefaultWikitextNS();
+
try {
- $title = Title::newFromText( 'FetchTextTestPage1' );
+ $title = Title::newFromText( 'FetchTextTestPage1', $wikitextNamespace );
$page = WikiPage::factory( $title );
$this->textId1 = $this->addRevision( $page, "FetchTextTestPage1Text1", "FetchTextTestPage1Summary1" );
- $title = Title::newFromText( 'FetchTextTestPage2' );
+ $title = Title::newFromText( 'FetchTextTestPage2', $wikitextNamespace );
$page = WikiPage::factory( $title );
$this->textId2 = $this->addRevision( $page, "FetchTextTestPage2Text1", "FetchTextTestPage2Summary1" );
$this->textId3 = $this->addRevision( $page, "FetchTextTestPage2Text2", "FetchTextTestPage2Summary2" );
@@ -173,7 +170,6 @@ class FetchTextTest extends MediaWikiTestCase {
}
-
// Instead of the following functions, a data provider would be great.
// However, as data providers are evaluated /before/ addDBData, a data
// provider would not know the required ids.
@@ -190,14 +186,14 @@ class FetchTextTest extends MediaWikiTestCase {
function testExistingSeveral() {
$this->assertFilter( "$this->textId1\n$this->textId5\n"
- . "$this->textId3\n$this->textId3",
+ . "$this->textId3\n$this->textId3",
implode( "", array(
- $this->textId1 . "\n23\nFetchTextTestPage1Text1",
- $this->textId5 . "\n44\nFetchTextTestPage2Text4 "
+ $this->textId1 . "\n23\nFetchTextTestPage1Text1",
+ $this->textId5 . "\n44\nFetchTextTestPage2Text4 "
. "some additional Text",
- $this->textId3 . "\n23\nFetchTextTestPage2Text2",
- $this->textId3 . "\n23\nFetchTextTestPage2Text2"
- ) ) );
+ $this->textId3 . "\n23\nFetchTextTestPage2Text2",
+ $this->textId3 . "\n23\nFetchTextTestPage2Text2"
+ ) ) );
}
function testEmpty() {
@@ -229,15 +225,14 @@ class FetchTextTest extends MediaWikiTestCase {
function testMix() {
$this->assertFilter( "ab\n" . $this->textId4 . ".5cd\n\nefg\n" . $this->textId2
- . "\n" . $this->textId3,
+ . "\n" . $this->textId3,
implode( "", array(
- "0\n-1\n",
- $this->textId4 . "\n23\nFetchTextTestPage2Text3",
- "0\n-1\n",
- "0\n-1\n",
- $this->textId2 . "\n23\nFetchTextTestPage2Text1",
- $this->textId3 . "\n23\nFetchTextTestPage2Text2"
- ) ) );
+ "0\n-1\n",
+ $this->textId4 . "\n23\nFetchTextTestPage2Text3",
+ "0\n-1\n",
+ "0\n-1\n",
+ $this->textId2 . "\n23\nFetchTextTestPage2Text1",
+ $this->textId3 . "\n23\nFetchTextTestPage2Text2"
+ ) ) );
}
-
}
diff --git a/tests/phpunit/maintenance/getSlaveServerTest.php b/tests/phpunit/maintenance/getSlaveServerTest.php
index 0b7c758c..2c848862 100644
--- a/tests/phpunit/maintenance/getSlaveServerTest.php
+++ b/tests/phpunit/maintenance/getSlaveServerTest.php
@@ -52,11 +52,11 @@ class GetSlaveServerTest extends MediaWikiTestCase {
// The main answer
$output = $this->getActualOutput();
- $firstLineEndPos = strpos( $output,"\n");
- if ( $firstLineEndPos === FALSE ) {
+ $firstLineEndPos = strpos( $output, "\n" );
+ if ( $firstLineEndPos === false ) {
$this->fail( "Could not find end of first line of output" );
}
- $firstLine = substr( $output, 0 , $firstLineEndPos );
+ $firstLine = substr( $output, 0, $firstLineEndPos );
$this->assertRegExp( "/^" . self::getServerRE() . "$/D",
$firstLine, "DB Server" );
@@ -64,6 +64,4 @@ class GetSlaveServerTest extends MediaWikiTestCase {
$this->expectOutputRegex( "/^[[:space:]]*\[wgDBprefix\][[:space:]]*=> "
. $wgDBprefix . "$/m" );
}
-
-
}