2018-06-03 16:40:20 +02:00
|
|
|
var config = {
|
|
|
|
baseUrl: '../',
|
|
|
|
paths: {
|
|
|
|
"console-reporter": "tests/console-reporter",
|
|
|
|
"es6-promise": "node_modules/es6-promise/dist/es6-promise.auto",
|
2018-10-30 11:23:43 +01:00
|
|
|
"jquery": "node_modules/jquery/dist/jquery",
|
2018-06-03 16:40:20 +02:00
|
|
|
"lodash": "node_modules/lodash/lodash",
|
|
|
|
"lodash.converter": "3rdparty/lodash.fp",
|
|
|
|
"lodash.fp": "src/lodash.fp",
|
2018-10-12 19:48:10 +02:00
|
|
|
"lodash.noconflict": "node_modules/@converse/headless/lodash.noconflict",
|
2018-06-03 16:40:20 +02:00
|
|
|
"pluggable": "node_modules/pluggable.js/dist/pluggable",
|
|
|
|
"sizzle": "node_modules/sizzle/dist/sizzle",
|
|
|
|
"underscore": "src/underscore-shim",
|
|
|
|
},
|
|
|
|
map: {
|
|
|
|
// '*' means all modules will get the '*.noconflict' version
|
|
|
|
// as their dependency.
|
|
|
|
'*': {
|
|
|
|
'backbone': 'backbone.noconflict',
|
|
|
|
'lodash': 'lodash.noconflict'
|
|
|
|
},
|
|
|
|
// '*.noconflict' wants the real module
|
|
|
|
// If this line was not here, there would
|
|
|
|
// be an unresolvable cyclic dependency.
|
|
|
|
'backbone.noconflict': { 'backbone': 'backbone' },
|
|
|
|
'lodash.noconflict': { 'lodash': 'lodash' }
|
|
|
|
},
|
|
|
|
|
|
|
|
lodashLoader: {
|
|
|
|
// Configuration for requirejs-tpl
|
|
|
|
// Use Mustache style syntax for variable interpolation
|
|
|
|
root: "src/templates/",
|
|
|
|
templateSettings: {
|
|
|
|
"escape": /\{\{\{([\s\S]+?)\}\}\}/g,
|
|
|
|
"evaluate": /\{\[([\s\S]+?)\]\}/g,
|
|
|
|
"interpolate": /\{\{([\s\S]+?)\}\}/g,
|
|
|
|
// By default, template places the values from your data in the
|
|
|
|
// local scope via the with statement. However, you can specify
|
|
|
|
// a single variable name with the variable setting. This can
|
|
|
|
// significantly improve the speed at which a template is able
|
|
|
|
// to render.
|
|
|
|
"variable": 'o'
|
|
|
|
}
|
|
|
|
},
|
|
|
|
|
|
|
|
// define module dependencies for modules not using define
|
|
|
|
shim: {
|
|
|
|
'backbone.orderedlistview': { deps: ['backbone.nativeview'] },
|
|
|
|
'backbone.overview': { deps: ['backbone.nativeview'] },
|
|
|
|
'backbone.vdomview': { deps: ['backbone.nativeview'] },
|
|
|
|
'awesomplete': { exports: 'Awesomplete'},
|
|
|
|
'emojione': { exports: 'emojione'},
|
|
|
|
'xss': {
|
|
|
|
'init': function (xss_noconflict) {
|
|
|
|
return {
|
|
|
|
filterXSS: window.filterXSS,
|
|
|
|
filterCSS: window.filterCSS
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
};
|
2017-04-05 11:01:31 +02:00
|
|
|
|
2013-12-30 20:27:57 +01:00
|
|
|
// Extra test dependencies
|
|
|
|
config.paths.mock = "tests/mock";
|
2017-04-05 11:01:31 +02:00
|
|
|
config.paths['wait-until-promise'] = "node_modules/wait-until-promise/index";
|
|
|
|
config.paths['test-utils'] = "tests/utils";
|
2017-04-06 22:28:35 +02:00
|
|
|
config.paths.sinon = "node_modules/sinon/pkg/sinon";
|
2016-05-24 10:00:07 +02:00
|
|
|
config.paths.transcripts = "converse-logs/converse-logs";
|
2017-06-19 11:08:57 +02:00
|
|
|
config.paths["jasmine-core"] = "node_modules/jasmine-core/lib/jasmine-core/jasmine";
|
|
|
|
config.paths.jasmine = "node_modules/jasmine-core/lib/jasmine-core/boot";
|
2017-06-13 12:22:02 +02:00
|
|
|
config.paths["jasmine-console"] = "node_modules/jasmine-core/lib/console/console";
|
2017-02-14 07:47:00 +01:00
|
|
|
config.paths["jasmine-html"] = "node_modules/jasmine-core/lib/jasmine-core/jasmine-html";
|
2017-04-05 11:01:31 +02:00
|
|
|
config.shim.jasmine = {
|
|
|
|
exports: 'window.jasmineRequire'
|
|
|
|
};
|
2013-12-30 20:27:57 +01:00
|
|
|
config.shim['jasmine-html'] = {
|
2017-06-19 11:08:57 +02:00
|
|
|
deps: ['jasmine-core'],
|
2017-04-05 11:01:31 +02:00
|
|
|
exports: 'window.jasmineRequire'
|
2013-12-30 20:27:57 +01:00
|
|
|
};
|
2017-06-13 12:22:02 +02:00
|
|
|
config.shim['jasmine-console'] = {
|
2017-06-19 11:08:57 +02:00
|
|
|
deps: ['jasmine-core'],
|
2017-04-05 11:01:31 +02:00
|
|
|
exports: 'window.jasmineRequire'
|
|
|
|
};
|
2017-06-19 11:08:57 +02:00
|
|
|
config.shim.jasmine = {
|
|
|
|
deps: ['jasmine-core', 'jasmine-html', 'jasmine-console'],
|
2017-06-13 12:22:02 +02:00
|
|
|
exports: 'window.jasmine'
|
2016-11-30 13:18:58 +01:00
|
|
|
};
|
2013-12-30 20:27:57 +01:00
|
|
|
require.config(config);
|
2013-07-28 21:20:36 +02:00
|
|
|
|
2017-04-05 11:01:31 +02:00
|
|
|
var specs = [
|
2017-06-19 11:08:57 +02:00
|
|
|
"jasmine",
|
2018-03-18 04:35:34 +01:00
|
|
|
//"spec/transcripts",
|
2018-02-02 19:33:19 +01:00
|
|
|
"spec/spoilers",
|
2017-12-20 13:17:58 +01:00
|
|
|
"spec/profiling",
|
2016-11-30 13:18:58 +01:00
|
|
|
"spec/utils",
|
|
|
|
"spec/converse",
|
|
|
|
"spec/bookmarks",
|
2017-05-16 11:56:40 +02:00
|
|
|
"spec/roomslist",
|
2016-11-30 13:18:58 +01:00
|
|
|
"spec/headline",
|
|
|
|
"spec/disco",
|
|
|
|
"spec/protocol",
|
2017-02-20 20:47:08 +01:00
|
|
|
"spec/presence",
|
2017-04-05 11:01:31 +02:00
|
|
|
"spec/eventemitter",
|
|
|
|
"spec/ping",
|
2018-06-06 11:07:59 +02:00
|
|
|
"spec/push",
|
2017-04-05 11:01:31 +02:00
|
|
|
"spec/xmppstatus",
|
2016-11-30 13:18:58 +01:00
|
|
|
"spec/mam",
|
2018-05-12 23:26:14 +02:00
|
|
|
"spec/omemo",
|
2016-11-30 13:18:58 +01:00
|
|
|
"spec/controlbox",
|
2017-12-22 14:38:23 +01:00
|
|
|
"spec/roster",
|
2016-11-30 13:18:58 +01:00
|
|
|
"spec/chatbox",
|
2018-05-10 22:14:37 +02:00
|
|
|
"spec/user-details-modal",
|
2018-04-29 15:40:24 +02:00
|
|
|
"spec/messages",
|
2019-01-25 11:53:07 +01:00
|
|
|
"spec/muc",
|
2018-09-04 11:39:27 +02:00
|
|
|
"spec/room_registration",
|
2018-08-14 12:50:47 +02:00
|
|
|
"spec/autocomplete",
|
2016-11-30 13:18:58 +01:00
|
|
|
"spec/minchats",
|
|
|
|
"spec/notification",
|
2018-05-17 18:25:12 +02:00
|
|
|
"spec/login",
|
2018-03-28 18:38:22 +02:00
|
|
|
"spec/register",
|
|
|
|
"spec/http-file-upload"
|
2017-04-05 11:01:31 +02:00
|
|
|
];
|
|
|
|
|
2017-06-19 11:08:57 +02:00
|
|
|
require(['console-reporter', 'mock', 'sinon', 'wait-until-promise', 'pluggable'],
|
|
|
|
function(ConsoleReporter, mock, sinon, waitUntilPromise, pluggable) {
|
2018-02-07 13:26:39 +01:00
|
|
|
|
2018-07-20 14:07:33 +02:00
|
|
|
if (window.view_mode) {
|
|
|
|
mock.view_mode = window.view_mode;
|
2018-02-07 13:26:39 +01:00
|
|
|
}
|
2017-04-05 11:01:31 +02:00
|
|
|
window.sinon = sinon;
|
2018-01-04 12:41:03 +01:00
|
|
|
window.waitUntilPromise = waitUntilPromise.default;
|
2017-04-05 11:01:31 +02:00
|
|
|
window.localStorage.clear();
|
|
|
|
window.sessionStorage.clear();
|
|
|
|
// Load the specs
|
2017-06-19 11:08:57 +02:00
|
|
|
require(specs, function (jasmine) {
|
|
|
|
var jasmineEnv = jasmine.getEnv();
|
|
|
|
jasmineEnv.addReporter(new ConsoleReporter());
|
2017-06-13 12:22:02 +02:00
|
|
|
window.onload();
|
|
|
|
});
|
|
|
|
});
|