mirror of
https://github.com/nasa/openmct.git
synced 2024-12-19 13:17:53 +00:00
d74eba1922
111 lines
4.0 KiB
JavaScript
111 lines
4.0 KiB
JavaScript
|
/*****************************************************************************
|
||
|
* Open MCT, Copyright (c) 2014-2016, United States Government
|
||
|
* as represented by the Administrator of the National Aeronautics and Space
|
||
* Administration. All rights reserved.
|
|||
*
|
|||
|
* Open MCT is licensed under the Apache License, Version 2.0 (the
|
||
|
* "License"); you may not use this file except in compliance with the License.
|
||
* You may obtain a copy of the License at
|
|||
* http://www.apache.org/licenses/LICENSE-2.0.
|
|||
*
|
|||
* Unless required by applicable law or agreed to in writing, software
|
|||
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
|||
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
|||
* License for the specific language governing permissions and limitations
|
|||
* under the License.
|
|||
*
|
|||
|
* Open MCT includes source code licensed under additional open source
|
||
|
* licenses. See the Open Source Licenses file (LICENSES.md) included with
|
||
* this source code distribution or the Licensing information page available
|
|||
* at runtime from the About dialog for additional information.
|
|||
*****************************************************************************/
|
|||
|
|||
|
/*global require,window*/
|
||
var allTestFiles = [];
|
|||
var TEST_REGEXP = /(Spec)\.js$/;
|
|||
var SRC_REGEXP = /^\/base\/(src|platform).*\.js$/;
|
|||
|
|||
var pathToModule = function(path) {
|
|||
return path.replace(/^\/base\//, '').replace(/\.js$/, '');
|
|||
};
|
|||
|
|||
Object.keys(window.__karma__.files).forEach(function(file) {
|
|||
if (TEST_REGEXP.test(file) || SRC_REGEXP.test(file)) {
|
|||
// Normalize paths to RequireJS module names.
|
|||
allTestFiles.push(pathToModule(file));
|
|||
}
|
|||
});
|
|||
|
|||
|
// Force es6-promise to load.
|
||
allTestFiles.unshift('es6-promise');
|
|||
|
|||
// Drop legacyRegistry, since it is at a different path by RequireJS config
|
|||
allTestFiles = allTestFiles.filter(function (file) {
|
|||
return file.indexOf('legacyRegistry') === -1;
|
|||
});
|
|||
|
|||
|
requirejs.config({
|
||
// Karma serves files from the basePath defined in karma.conf.js
|
|||
baseUrl: '/base',
|
|||
|
|||
|
"paths": {
|
||
"legacyRegistry": "src/legacyRegistry",
|
|||
"angular": "bower_components/angular/angular.min",
|
|||
"angular-route": "bower_components/angular-route/angular-route.min",
|
|||
|
"csv": "bower_components/comma-separated-values/csv.min",
|
||
"EventEmitter": "bower_components/eventemitter3/index",
|
|||
"es6-promise": "bower_components/es6-promise/es6-promise.min",
|
|||
|
"html2canvas": "bower_components/html2canvas/build/html2canvas.min",
|
||
|
"moment": "bower_components/moment/moment",
|
||
"moment-duration-format": "bower_components/moment-duration-format/lib/moment-duration-format",
|
|||
|
"saveAs": "bower_components/FileSaver.js/FileSaver.min",
|
||
|
"screenfull": "bower_components/screenfull/dist/screenfull.min",
|
||
"text": "bower_components/text/text",
|
|||
|
"uuid": "bower_components/node-uuid/uuid",
|
||
"zepto": "bower_components/zepto/zepto.min",
|
|||
|
"lodash": "bower_components/lodash/lodash",
|
||
"d3": "bower_components/d3/d3.min"
|
|||
|
},
|
||
|
|||
"shim": {
|
|||
"angular": {
|
|||
"exports": "angular"
|
|||
},
|
|||
"angular-route": {
|
|||
"deps": [ "angular" ]
|
|||
},
|
|||
"EventEmitter": {
|
|||
"exports": "EventEmitter"
|
|||
},
|
|||
|
"moment-duration-format": {
|
||
"deps": [ "moment" ]
|
|||
},
|
|||
"screenfull": {
|
|||
"exports": "screenfull"
|
|||
},
|
|||
[Tree] Update test configuration
...to account for new dependency on Zepto (and its necessary
shim.)
|
"zepto": {
|
||
"exports": "Zepto"
|
|||
},
|
|||
"lodash": {
|
|||
"exports": "lodash"
|
|||
|
},
|
||
"d3": {
|
|||
"exports": "d3"
|
|||
|
}
|
||
},
|
|||
|
|||
// dynamically load all test files
|
|||
deps: allTestFiles,
|
|||
|
|||
// we have to kickoff jasmine, as it is asynchronous
|
|||
callback: function () {
|
|||
var args = [].slice.apply(arguments);
|
|||
require(['es6-promise'], function (es6Promise) {
|
|||
if (!window.Promise) {
|
|||
window.Promise = es6Promise.Promise;
|
|||
}
|
|||
window.__karma__.start.apply(window.__karma__, args);
|
|||
});
|
|||
}
|
|||
});
|