summaryrefslogtreecommitdiff
path: root/maintenance/tests/MediaWiki_Setup.php
diff options
context:
space:
mode:
Diffstat (limited to 'maintenance/tests/MediaWiki_Setup.php')
-rw-r--r--maintenance/tests/MediaWiki_Setup.php28
1 files changed, 28 insertions, 0 deletions
diff --git a/maintenance/tests/MediaWiki_Setup.php b/maintenance/tests/MediaWiki_Setup.php
new file mode 100644
index 00000000..e7acc338
--- /dev/null
+++ b/maintenance/tests/MediaWiki_Setup.php
@@ -0,0 +1,28 @@
+<?php
+
+abstract class MediaWiki_Setup extends PHPUnit_Framework_TestCase {
+
+ protected function buildTestDatabase( $tables ) {
+ global $wgDBprefix;
+
+ $db = wfGetDB( DB_MASTER );
+ $oldTableNames = array();
+ foreach( $tables as $table )
+ $oldTableNames[$table] = $db->tableName( $table );
+ $db->tablePrefix( 'parsertest_' );
+
+ if( $db->isOpen() ) {
+ foreach ( $tables as $tbl ) {
+ $newTableName = $db->tableName( $tbl );
+ $tableName = $oldTableNames[$tbl];
+ $db->query( "DROP TABLE IF EXISTS $newTableName", __METHOD__ );
+ $db->duplicateTableStructure( $tableName, $newTableName, __METHOD__ );
+ }
+ return $db;
+ } else {
+ // Something amiss
+ return null;
+ }
+ }
+}
+