};
},
teardown: function () {
+ mw.loader.maxQueryLength = 2000;
// Teardown for StringSet shim test
if ( this.nativeSet ) {
window.Set = this.nativeSet;
// exposed for cross-file mocks.
delete mw.loader.testCallback;
delete mw.loader.testFail;
+ delete mw.getScriptExampleScriptLoaded;
}
} ) );
assert.deepEqual(
[ {
topic: 'resourceloader.exception',
- error: 'Unknown dependency: test.load.unreg',
+ error: 'Unknown module: test.load.unreg',
source: 'resolve'
} ],
capture
assert.deepEqual(
[ {
topic: 'resourceloader.exception',
- error: 'Unknown dependency: test.load.missingdep2',
+ error: 'Unknown module: test.load.missingdep2',
source: 'resolve'
} ],
capture
[ 'testUrlIncDump', 'dump', [], null, 'testloader' ]
] );
- mw.config.set( 'wgResourceLoaderMaxQueryLength', 10 );
+ mw.loader.maxQueryLength = 10;
return mw.loader.using( [ 'testUrlIncDump', 'testUrlInc' ] ).then( function ( require ) {
assert.propEqual(
} );
} );
+ QUnit.test( '.getScript() - success', function ( assert ) {
+ var scriptUrl = QUnit.fixurl(
+ mw.config.get( 'wgScriptPath' ) + '/tests/qunit/data/mediawiki.loader.getScript.example.js'
+ );
+
+ return mw.loader.getScript( scriptUrl ).then(
+ function () {
+ assert.strictEqual( mw.getScriptExampleScriptLoaded, true, 'Data attached to a global object is available' );
+ }
+ );
+ } );
+
+ QUnit.test( '.getScript() - failure', function ( assert ) {
+ assert.rejects(
+ mw.loader.getScript( 'https://example.test/not-found' ),
+ /Failed to load script/,
+ 'Descriptive error message'
+ );
+ } );
+
}() );