Add tests for class names in the api main and query module manager
This found wrong class names for api modules Change-Id: If1125cd5fa4ed836fe15fc79480d78ebd899be4e
This commit is contained in:
parent
e4b551ca0e
commit
bae165bb9f
2 changed files with 38 additions and 0 deletions
|
|
@ -61,4 +61,22 @@ class ApiMainTest extends ApiTestCase {
|
|||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Test if all classes in the main module manager exists
|
||||
*/
|
||||
public function testClassNamesInModuleManager() {
|
||||
global $wgAutoloadLocalClasses;
|
||||
|
||||
$api = new ApiMain(
|
||||
new FauxRequest( array( 'action' => 'query', 'meta' => 'siteinfo' ) )
|
||||
);
|
||||
$modules = $api->getModuleManager()->getNamesWithClasses();
|
||||
foreach( $modules as $name => $class ) {
|
||||
$this->assertArrayHasKey(
|
||||
$class,
|
||||
$wgAutoloadLocalClasses,
|
||||
'Class ' . $class . ' for api module ' . $name . ' not in autoloader (with exact case)'
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -116,4 +116,24 @@ class ApiQueryTest extends ApiTestCase {
|
|||
array( 'apiquerytestiw:foo', NS_MAIN, null, true ),
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* Test if all classes in the query module manager exists
|
||||
*/
|
||||
public function testClassNamesInModuleManager() {
|
||||
global $wgAutoloadLocalClasses;
|
||||
|
||||
$api = new ApiMain(
|
||||
new FauxRequest( array( 'action' => 'query', 'meta' => 'siteinfo' ) )
|
||||
);
|
||||
$queryApi = new ApiQuery( $api, 'query' );
|
||||
$modules = $queryApi->getModuleManager()->getNamesWithClasses();
|
||||
foreach( $modules as $name => $class ) {
|
||||
$this->assertArrayHasKey(
|
||||
$class,
|
||||
$wgAutoloadLocalClasses,
|
||||
'Class ' . $class . ' for api module ' . $name . ' not in autoloader (with exact case)'
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue