Fix tests that don't check composer's autoloader

Tests were failing if class cannot be loaded using `\AutoLoader` but can be loaded by composer's autoloader.

Change-Id: I005c9d99245f4733a9666c4bfe9e39baeaad3960
This commit is contained in:
Aleksey Bekh-Ivanov (WMDE) 2016-12-21 16:06:57 +01:00
parent 98e21f326e
commit 5df18797e4
2 changed files with 8 additions and 18 deletions

View file

@ -85,20 +85,15 @@ class ApiMainTest extends ApiTestCase {
* Test if all classes in the main module manager exists
*/
public function testClassNamesInModuleManager() {
global $wgAutoloadLocalClasses, $wgAutoloadClasses;
// wgAutoloadLocalClasses has precedence, just like in includes/AutoLoader.php
$classes = $wgAutoloadLocalClasses + $wgAutoloadClasses;
$api = new ApiMain(
new FauxRequest( [ 'action' => 'query', 'meta' => 'siteinfo' ] )
);
$modules = $api->getModuleManager()->getNamesWithClasses();
foreach ( $modules as $name => $class ) {
$this->assertArrayHasKey(
$class,
$classes,
'Class ' . $class . ' for api module ' . $name . ' not in autoloader (with exact case)'
$this->assertTrue(
class_exists( $class ),
'Class ' . $class . ' for api module ' . $name . ' does not exist (with exact case)'
);
}
}

View file

@ -123,21 +123,16 @@ class ApiQueryTest extends ApiTestCase {
* Test if all classes in the query module manager exists
*/
public function testClassNamesInModuleManager() {
global $wgAutoloadLocalClasses, $wgAutoloadClasses;
// wgAutoloadLocalClasses has precedence, just like in includes/AutoLoader.php
$classes = $wgAutoloadLocalClasses + $wgAutoloadClasses;
$api = new ApiMain(
new FauxRequest( [ 'action' => 'query', 'meta' => 'siteinfo' ] )
);
$queryApi = new ApiQuery( $api, 'query' );
$modules = $queryApi->getModuleManager()->getNamesWithClasses();
foreach ( $modules as $name => $class ) {
$this->assertArrayHasKey(
$class,
$classes,
'Class ' . $class . ' for api module ' . $name . ' not in autoloader (with exact case)'
$this->assertTrue(
class_exists( $class ),
'Class ' . $class . ' for api module ' . $name . ' does not exist (with exact case)'
);
}
}