diff options
Diffstat (limited to 'maintenance/tests/MediaWiki_Setup.php')
-rw-r--r-- | maintenance/tests/MediaWiki_Setup.php | 28 |
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; + } + } +} + |