216 lines
8.6 KiB
JavaScript
216 lines
8.6 KiB
JavaScript
/* globals requirejs, requireSerial */
|
|
/* eslint-disable quote-props */
|
|
|
|
(function(requirejs, requireSerial) {
|
|
'use strict';
|
|
|
|
var i, specHelpers, testFiles;
|
|
|
|
requirejs.config({
|
|
baseUrl: '/base/',
|
|
paths: {
|
|
'gettext': 'xmodule_js/common_static/js/test/i18n',
|
|
'codemirror': 'xmodule_js/common_static/js/vendor/CodeMirror/codemirror',
|
|
'jquery': 'common/js/vendor/jquery',
|
|
'jquery-migrate': 'common/js/vendor/jquery-migrate',
|
|
'jquery.ui': 'xmodule_js/common_static/js/vendor/jquery-ui.min',
|
|
'jquery.form': 'xmodule_js/common_static/js/vendor/jquery.form',
|
|
'jquery.markitup': 'xmodule_js/common_static/js/vendor/markitup/jquery.markitup',
|
|
'jquery.leanModal': 'xmodule_js/common_static/js/vendor/jquery.leanModal',
|
|
'jquery.smoothScroll': 'xmodule_js/common_static/js/vendor/jquery.smooth-scroll.min',
|
|
'jquery.scrollTo': 'common/js/vendor/jquery.scrollTo',
|
|
'jquery.timepicker': 'xmodule_js/common_static/js/vendor/timepicker/jquery.timepicker',
|
|
'jquery.cookie': 'xmodule_js/common_static/js/vendor/jquery.cookie',
|
|
'jquery.qtip': 'xmodule_js/common_static/js/vendor/jquery.qtip.min',
|
|
'jquery.fileupload': 'xmodule_js/common_static/js/vendor/jQuery-File-Upload/js/jquery.fileupload',
|
|
'jquery.fileupload-process': 'xmodule_js/common_static/js/vendor/jQuery-File-Upload/js/jquery.fileupload-process', // eslint-disable-line max-len
|
|
'jquery.fileupload-validate': 'xmodule_js/common_static/js/vendor/jQuery-File-Upload/js/jquery.fileupload-validate', // eslint-disable-line max-len
|
|
'jquery.iframe-transport': 'xmodule_js/common_static/js/vendor/jQuery-File-Upload/js/jquery.iframe-transport', // eslint-disable-line max-len
|
|
'jquery.inputnumber': 'xmodule_js/common_static/js/vendor/html5-input-polyfills/number-polyfill',
|
|
'jquery.immediateDescendents': 'xmodule_js/common_static/js/src/jquery.immediateDescendents',
|
|
'jquery.ajaxQueue': 'xmodule_js/common_static/js/vendor/jquery.ajaxQueue',
|
|
'datepair': 'xmodule_js/common_static/js/vendor/timepicker/datepair',
|
|
'date': 'xmodule_js/common_static/js/vendor/date',
|
|
'text': 'xmodule_js/common_static/js/vendor/requirejs/text',
|
|
'underscore': 'common/js/vendor/underscore',
|
|
'underscore.string': 'common/js/vendor/underscore.string',
|
|
'backbone': 'common/js/vendor/backbone',
|
|
'backbone.associations': 'xmodule_js/common_static/js/vendor/backbone-associations-min',
|
|
'backbone.paginator': 'common/js/vendor/backbone.paginator',
|
|
'tinymce': 'xmodule_js/common_static/js/vendor/tinymce/js/tinymce/tinymce.full.min',
|
|
'jquery.tinymce': 'xmodule_js/common_static/js/vendor/tinymce/js/tinymce/jquery.tinymce',
|
|
'xmodule': 'xmodule_js/src/xmodule',
|
|
'xblock/cms.runtime.v1': 'cms/js/xblock/cms.runtime.v1',
|
|
'xblock': 'common/js/xblock',
|
|
'utility': 'xmodule_js/common_static/js/src/utility',
|
|
'sinon': 'common/js/vendor/sinon',
|
|
'squire': 'common/js/vendor/Squire',
|
|
'draggabilly': 'xmodule_js/common_static/js/vendor/draggabilly',
|
|
'domReady': 'xmodule_js/common_static/js/vendor/domReady',
|
|
'URI': 'xmodule_js/common_static/js/vendor/URI.min',
|
|
mathjax: 'https://cdn.jsdelivr.net/npm/mathjax@2.7.5/MathJax.js?config=TeX-MML-AM_CHTML&delayStartupUntil=configured', // eslint-disable-line max-len
|
|
'youtube': '//www.youtube.com/player_api?noext',
|
|
'js/src/ajax_prefix': 'xmodule_js/common_static/js/src/ajax_prefix'
|
|
},
|
|
shim: {
|
|
'gettext': {
|
|
exports: 'gettext'
|
|
},
|
|
'date': {
|
|
exports: 'Date'
|
|
},
|
|
'jquery.ui': {
|
|
deps: ['jquery'],
|
|
exports: 'jQuery.ui'
|
|
},
|
|
'jquery.form': {
|
|
deps: ['jquery'],
|
|
exports: 'jQuery.fn.ajaxForm'
|
|
},
|
|
'jquery.markitup': {
|
|
deps: ['jquery'],
|
|
exports: 'jQuery.fn.markitup'
|
|
},
|
|
'jquery.leanModal': {
|
|
deps: ['jquery'],
|
|
exports: 'jQuery.fn.leanModal'
|
|
},
|
|
'jquery.smoothScroll': {
|
|
deps: ['jquery'],
|
|
exports: 'jQuery.fn.smoothScroll'
|
|
},
|
|
'jquery.scrollTo': {
|
|
deps: ['jquery'],
|
|
exports: 'jQuery.fn.scrollTo'
|
|
},
|
|
'jquery.cookie': {
|
|
deps: ['jquery'],
|
|
exports: 'jQuery.fn.cookie'
|
|
},
|
|
'jquery.qtip': {
|
|
deps: ['jquery'],
|
|
exports: 'jQuery.fn.qtip'
|
|
},
|
|
'jquery.fileupload': {
|
|
deps: ['jquery.ui', 'jquery.iframe-transport'],
|
|
exports: 'jQuery.fn.fileupload'
|
|
},
|
|
'jquery.fileupload-process': {
|
|
deps: ['jquery.fileupload']
|
|
},
|
|
'jquery.fileupload-validate': {
|
|
deps: ['jquery.fileupload']
|
|
},
|
|
'jquery.inputnumber': {
|
|
deps: ['jquery'],
|
|
exports: 'jQuery.fn.inputNumber'
|
|
},
|
|
'jquery.tinymce': {
|
|
deps: ['jquery', 'tinymce'],
|
|
exports: 'jQuery.fn.tinymce'
|
|
},
|
|
'jquery.ajaxQueue': {
|
|
deps: ['jquery'],
|
|
exports: 'jQuery.fn.ajaxQueue'
|
|
},
|
|
'datepair': {
|
|
deps: ['jquery.ui', 'jquery.timepicker']
|
|
},
|
|
'underscore': {
|
|
exports: '_'
|
|
},
|
|
'backbone': {
|
|
deps: ['underscore', 'jquery'],
|
|
exports: 'Backbone'
|
|
},
|
|
'backbone.associations': {
|
|
deps: ['backbone'],
|
|
exports: 'Backbone.Associations'
|
|
},
|
|
'backbone.paginator': {
|
|
deps: ['backbone'],
|
|
exports: 'Backbone.PageableCollection'
|
|
},
|
|
'youtube': {
|
|
exports: 'YT'
|
|
},
|
|
'codemirror': {
|
|
exports: 'CodeMirror'
|
|
},
|
|
'tinymce': {
|
|
exports: 'tinymce'
|
|
},
|
|
'mathjax': {
|
|
exports: 'MathJax',
|
|
init: function() {
|
|
window.MathJax.Hub.Config({
|
|
tex2jax: {
|
|
inlineMath: [['\\(', '\\)'], ['[mathjaxinline]', '[/mathjaxinline]']],
|
|
displayMath: [['\\[', '\\]'], ['[mathjax]', '[/mathjax]']]
|
|
}
|
|
});
|
|
window.MathJax.Hub.Configured();
|
|
}
|
|
},
|
|
'URI': {
|
|
exports: 'URI'
|
|
},
|
|
'xmodule': {
|
|
exports: 'XModule'
|
|
},
|
|
'sinon': {
|
|
exports: 'sinon'
|
|
},
|
|
'common/js/spec_helpers/jasmine-extensions': {
|
|
deps: ['jquery']
|
|
},
|
|
'common/js/spec_helpers/jasmine-stealth': {
|
|
deps: ['underscore', 'underscore.string']
|
|
},
|
|
'common/js/spec_helpers/jasmine-waituntil': {
|
|
deps: ['jquery']
|
|
},
|
|
'xblock/core': {
|
|
exports: 'XBlock',
|
|
deps: ['jquery', 'jquery.immediateDescendents']
|
|
},
|
|
'xblock/runtime.v1': {
|
|
exports: 'XBlock',
|
|
deps: ['xblock/core']
|
|
},
|
|
'cms/js/main': {
|
|
deps: ['js/src/ajax_prefix']
|
|
},
|
|
'js/src/ajax_prefix': {
|
|
deps: ['jquery']
|
|
}
|
|
}
|
|
});
|
|
|
|
jasmine.getFixtures().fixturesPath = '/base/templates';
|
|
|
|
testFiles = [
|
|
'js/spec/views/assets_squire_spec',
|
|
'js/spec/video/translations_editor_spec',
|
|
'js/spec/video/file_uploader_editor_spec',
|
|
'js/spec/models/group_configuration_spec'
|
|
];
|
|
|
|
i = 0;
|
|
|
|
while (i < testFiles.length) {
|
|
testFiles[i] = '/base/' + testFiles[i] + '.js';
|
|
i++;
|
|
}
|
|
|
|
specHelpers = [
|
|
'common/js/spec_helpers/jasmine-extensions',
|
|
'common/js/spec_helpers/jasmine-stealth',
|
|
'common/js/spec_helpers/jasmine-waituntil'
|
|
];
|
|
|
|
requireSerial(specHelpers.concat(testFiles), function() {
|
|
return window.__karma__.start(); // eslint-disable-line no-underscore-dangle
|
|
});
|
|
}).call(this, requirejs, requireSerial);
|