X-Git-Url: https://git.cyclocoop.org/admin/?a=blobdiff_plain;f=tests%2Fqunit%2Fsuites%2Fresources%2Fmediawiki%2Fmediawiki.loader.test.js;h=ae5ddb587df299473e6e2641e01cbb99b2fa3a76;hb=7e93521baaa4342b091a1bb7688d877af164e1e0;hp=1a1affa5f539c7963c5deaf8eb23c6a3f8b8c2a9;hpb=84662b72f073f2df3aa8e8e209da0bc568b91716;p=lhc%2Fweb%2Fwiklou.git diff --git a/tests/qunit/suites/resources/mediawiki/mediawiki.loader.test.js b/tests/qunit/suites/resources/mediawiki/mediawiki.loader.test.js index 1a1affa5f5..ae5ddb587d 100644 --- a/tests/qunit/suites/resources/mediawiki/mediawiki.loader.test.js +++ b/tests/qunit/suites/resources/mediawiki/mediawiki.loader.test.js @@ -1,15 +1,12 @@ ( function ( mw, $ ) { QUnit.module( 'mediawiki.loader', QUnit.newMwEnvironment( { setup: function ( assert ) { - mw.loader.store.enabled = false; - // Expose for load.mock.php mw.loader.testFail = function ( reason ) { assert.ok( false, reason ); }; }, teardown: function () { - mw.loader.store.enabled = false; // Teardown for StringSet shim test if ( this.nativeSet ) { window.Set = this.nativeSet; @@ -855,7 +852,15 @@ QUnit.test( 'Stale response caching - T117587', function ( assert ) { var count = 0; - mw.loader.store.enabled = true; + // Enable store and stub timeout/idle scheduling + this.sandbox.stub( mw.loader.store, 'enabled', true ); + this.sandbox.stub( window, 'setTimeout', function ( fn ) { + fn(); + } ); + this.sandbox.stub( mw, 'requestIdleCallback', function ( fn ) { + fn(); + } ); + mw.loader.register( 'test.stale', 'v2' ); assert.strictEqual( mw.loader.store.get( 'test.stale' ), false, 'Not in store' ); @@ -869,7 +874,7 @@ // After implementing, registry contains version as implemented by the response. assert.strictEqual( mw.loader.getVersion( 'test.stale' ), 'v1', 'Override version' ); assert.strictEqual( mw.loader.getState( 'test.stale' ), 'ready' ); - assert.ok( mw.loader.store.get( 'test.stale' ), 'In store' ); + assert.strictEqual( typeof mw.loader.store.get( 'test.stale' ), 'string', 'In store' ); } ) .then( function () { // Reset run time, but keep mw.loader.store @@ -885,7 +890,15 @@ QUnit.test( 'Stale response caching - backcompat', function ( assert ) { var script = 0; - mw.loader.store.enabled = true; + // Enable store and stub timeout/idle scheduling + this.sandbox.stub( mw.loader.store, 'enabled', true ); + this.sandbox.stub( window, 'setTimeout', function ( fn ) { + fn(); + } ); + this.sandbox.stub( mw, 'requestIdleCallback', function ( fn ) { + fn(); + } ); + mw.loader.register( 'test.stalebc', 'v2' ); assert.strictEqual( mw.loader.store.get( 'test.stalebc' ), false, 'Not in store' ); @@ -897,7 +910,7 @@ .then( function () { assert.strictEqual( script, 1, 'module script ran' ); assert.strictEqual( mw.loader.getState( 'test.stalebc' ), 'ready' ); - assert.ok( mw.loader.store.get( 'test.stalebc' ), 'In store' ); + assert.strictEqual( typeof mw.loader.store.get( 'test.stalebc' ), 'string', 'In store' ); } ) .then( function () { // Reset run time, but keep mw.loader.store