$resourceLoader->register( 'test.foo', new ResourceLoaderTestModule() );
$resourceLoader->register( 'test.bar', new ResourceLoaderTestModule() );
$this->assertEquals(
- [ 'test.foo', 'test.bar' ],
+ [ 'startup', 'test.foo', 'test.bar' ],
$resourceLoader->getModuleNames()
);
}
* @covers ResourceLoader::getSources
*/
public function testAddSource( $name, $info, $expected ) {
- $rl = new ResourceLoader;
+ $rl = new EmptyResourceLoader;
$rl->addSource( $name, $info );
if ( is_array( $expected ) ) {
foreach ( $expected as $source ) {
* @covers ResourceLoader::addSource
*/
public function testAddSourceDupe() {
- $rl = new ResourceLoader;
+ $rl = new EmptyResourceLoader;
$this->setExpectedException(
MWException::class, 'ResourceLoader duplicate source addition error'
);
* @covers ResourceLoader::addSource
*/
public function testAddSourceInvalid() {
- $rl = new ResourceLoader;
+ $rl = new EmptyResourceLoader;
$this->setExpectedException( MWException::class, 'with no "loadScript" key' );
$rl->addSource( 'foo', [ 'x' => 'https://example.org/w/load.php' ] );
}
* @covers ResourceLoader::getLoadScript
*/
public function testGetLoadScript() {
- $rl = new ResourceLoader();
+ $rl = new EmptyResourceLoader();
$sources = self::fakeSources();
$rl->addSource( $sources );
foreach ( [ 'examplewiki', 'example2wiki' ] as $name ) {
* @covers ResourceLoader::makeModuleResponse
*/
public function testMakeModuleResponseStartupError() {
- $rl = new EmptyResourceLoader();
+ // This is an integration test that uses a lot of MediaWiki state,
+ // provide the full Config object here.
+ $rl = new EmptyResourceLoader( MediaWikiServices::getInstance()->getMainConfig() );
$rl->register( [
'foo' => self::getSimpleModuleMock( 'foo();' ),
'ferry' => self::getFailFerryMock(),
'bar' => self::getSimpleModuleMock( 'bar();' ),
- 'startup' => [ 'class' => ResourceLoaderStartUpModule::class ],
] );
$context = $this->getResourceLoaderContext(
[
);
$this->assertEquals(
- [ 'foo', 'ferry', 'bar', 'startup' ],
+ [ 'startup', 'foo', 'ferry', 'bar' ],
$rl->getModuleNames(),
'getModuleNames'
);