111 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			111 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| /*global jasmine, __karma__, window*/
 | |
| Error.stackTraceLimit = 5;
 | |
| jasmine.DEFAULT_TIMEOUT_INTERVAL = 10000;
 | |
| 
 | |
| __karma__.loaded = function () {
 | |
| };
 | |
| 
 | |
| function isJsFile(path) {
 | |
|   return path.slice(-3) == '.js';
 | |
| }
 | |
| 
 | |
| function isSpecFile(path) {
 | |
|   return path.slice(-7) == 'spec.js';
 | |
| }
 | |
| 
 | |
| function isBuiltFile(path) {
 | |
|   var builtPath = '/base/dist/';
 | |
|   return isJsFile(path) && (path.substr(0, builtPath.length) == builtPath);
 | |
| }
 | |
| 
 | |
| var allSpecFiles = Object.keys(window.__karma__.files)
 | |
|   .filter(isSpecFile)
 | |
|   .filter(isBuiltFile);
 | |
| 
 | |
| // Load our SystemJS configuration.
 | |
| System.config({
 | |
|   baseURL: '/base'
 | |
| });
 | |
| 
 | |
| System.config(
 | |
|   {
 | |
|     map: {
 | |
|       'rxjs': 'node_modules/rxjs',
 | |
|       '@angular': 'dist/all/@angular'
 | |
|     },
 | |
|     packages: {
 | |
|       '@angular/core/testing': {
 | |
|         main: 'index.js',
 | |
|         defaultExtension: 'js'
 | |
|       },
 | |
|       '@angular/core': {
 | |
|         main: 'index.js',
 | |
|         defaultExtension: 'js'
 | |
|       },
 | |
|       '@angular/compiler/testing': {
 | |
|         main: 'index.js',
 | |
|         defaultExtension: 'js'
 | |
|       },
 | |
|       '@angular/compiler': {
 | |
|         main: 'index.js',
 | |
|         defaultExtension: 'js'
 | |
|       },
 | |
|       '@angular/common/testing': {
 | |
|         main: 'index.js',
 | |
|         defaultExtension: 'js'
 | |
|       },
 | |
|       '@angular/common': {
 | |
|         main: 'index.js',
 | |
|         defaultExtension: 'js'
 | |
|       },
 | |
|       '@angular/platform-browser/testing': {
 | |
|         main: 'index.js',
 | |
|         defaultExtension: 'js'
 | |
|       },
 | |
|       '@angular/platform-browser': {
 | |
|         main: 'index.js',
 | |
|         defaultExtension: 'js'
 | |
|       },
 | |
|       '@angular/platform-browser-dynamic/testing': {
 | |
|         main: 'index.js',
 | |
|         defaultExtension: 'js'
 | |
|       },
 | |
|       '@angular/platform-browser-dynamic': {
 | |
|         main: 'index.js',
 | |
|         defaultExtension: 'js'
 | |
|       },
 | |
|       '@angular/router/testing': {
 | |
|         main: 'index.js',
 | |
|         defaultExtension: 'js'
 | |
|       },
 | |
|       '@angular/router': {
 | |
|         main: 'index.js',
 | |
|         defaultExtension: 'js'
 | |
|       },
 | |
|       'rxjs': {
 | |
|         main: 'Rx.js',
 | |
|         defaultExtension: 'js'
 | |
|       }
 | |
|     }
 | |
|   });
 | |
| 
 | |
| Promise.all([
 | |
|   System.import('@angular/core/testing'),
 | |
|   System.import('@angular/platform-browser-dynamic/testing')
 | |
| ]).then(function (providers) {
 | |
|   var testing = providers[0];
 | |
|   var testingBrowser = providers[1];
 | |
| 
 | |
|   testing.TestBed.initTestEnvironment(
 | |
|     testingBrowser.BrowserDynamicTestingModule,
 | |
|     testingBrowser.platformBrowserDynamicTesting());
 | |
| 
 | |
| }).then(function() {
 | |
|   // Finally, load all spec files.
 | |
|   // This will run the tests directly.
 | |
|   return Promise.all(
 | |
|     allSpecFiles.map(function (moduleName) {
 | |
|       return System.import(moduleName);
 | |
|     }));
 | |
| }).then(__karma__.start, __karma__.error);
 |