Merge pull request #12243 from edx/usman/tnl4416-spec-nesting
When using RequireJS load spec files one by one.
This commit is contained in:
@@ -178,7 +178,7 @@
|
||||
testFiles[i] = '/base/' + testFiles[i];
|
||||
}
|
||||
|
||||
require(testFiles, function () {
|
||||
window.requireSerial(testFiles, function () {
|
||||
// start test run, once Require.js is done
|
||||
window.__karma__.start();
|
||||
});
|
||||
|
||||
23
common/static/common/js/utils/require-serial.js
Normal file
23
common/static/common/js/utils/require-serial.js
Normal file
@@ -0,0 +1,23 @@
|
||||
/*
|
||||
Helper function used to require files serially instead of concurrently.
|
||||
*/
|
||||
(function (window, require) {
|
||||
'use strict';
|
||||
|
||||
var requireModules = function (paths, callback, modules) {
|
||||
// If all the modules have been loaded, call the callback.
|
||||
if (paths.length === 0) {
|
||||
return callback.apply(null, modules);
|
||||
}
|
||||
// Otherwise load the next one.
|
||||
require([paths.shift()], function(module) {
|
||||
modules.push(module);
|
||||
requireModules(paths, callback, modules);
|
||||
});
|
||||
};
|
||||
|
||||
window.requireSerial = function(paths, callback) {
|
||||
requireModules(paths, callback, []);
|
||||
};
|
||||
|
||||
}).call(this, window, require || RequireJS.require);
|
||||
@@ -46,7 +46,8 @@ var libraryFiles = [
|
||||
{pattern: 'js/test/i18n.js', included: false},
|
||||
{pattern: 'coffee/src/jquery.immediateDescendents.js', included: false},
|
||||
{pattern: 'js/vendor/requirejs/text.js', included: false},
|
||||
{pattern: 'js/vendor/sinon-1.17.0.js', included: false}
|
||||
{pattern: 'js/vendor/sinon-1.17.0.js', included: false},
|
||||
{pattern: 'common/js/utils/require-serial.js', included: true}
|
||||
];
|
||||
|
||||
// Paths to source JavaScript files
|
||||
|
||||
Reference in New Issue
Block a user