blob: 6a6fded17a9e369ef82bce4c977d7b900433c6c7 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
<?php
require_once( __DIR__ . '/NewParserTest.php' );
/**
* The UnitTest must be either a class that inherits from MediaWikiTestCase
* or a class that provides a public static suite() method which returns
* an PHPUnit_Framework_Test object
*
* @group Parser
* @group Database
*/
class MediaWikiParserTest {
public static function suite() {
global $wgParserTestFiles;
$suite = new PHPUnit_Framework_TestSuite;
foreach ( $wgParserTestFiles as $filename ) {
$testsName = basename( $filename, '.txt' );
/* This used to be ucfirst( basename( dirname( $filename ) ) )
* and then was ucfirst( basename( $filename, '.txt' )
* but that didn't work with names like foo.tests.txt
*/
$className = str_replace( '.', '_', ucfirst( basename( $filename, '.txt' ) ) );
eval( "/** @group Database\n@group Parser\n*/ class $className extends NewParserTest { protected \$file = '" . strtr( $filename, array( "'" => "\\'", '\\' => '\\\\' ) ) . "'; } " );
$parserTester = new $className( $testsName );
$suite->addTestSuite( new ReflectionClass ( $parserTester ) );
}
return $suite;
}
}
|