-
Notifications
You must be signed in to change notification settings - Fork 16
/
Copy pathkarma.conf.js
99 lines (78 loc) · 2.59 KB
/
karma.conf.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
// Set `DEBUG=true karma start` to enable some debugging options.
var DEBUG = process.env.DEBUG;
module.exports = function(config) {
var configuration = {
basePath: '',
// The test runner name. Change to jasmine, jest, whatever. Must load
// a matching karma plugin later in the plugins array.
frameworks: ['mocha'],
// Can be a single file, array, or glob of files.
files: [
'test/ajax.js'
],
// Any files to ignore.
exclude: [],
// Run webpack to give us module loader support, sourcemap to give us correct
// line numbers for errors.
preprocessors: {
'test/ajax.js': ['webpack', 'sourcemap']
},
// Plugins loaded by karma.
plugins: [
require('karma-webpack'),
require('karma-mocha'),
require('karma-chrome-launcher'),
require('karma-firefox-launcher'),
require('karma-junit-reporter'),
require('karma-sourcemap-loader')
],
// Any options to webpack.
webpack: {},
webpackServer: {
stats: {
colors: true
}
},
// test results reporter to use
// possible values: 'dots', 'progress', 'junit', 'growl', 'coverage'
reporters: ['progress', 'junit'],
junitReporter: {
outputFile: 'reports/karma-test-results.xml',
suite: '',
},
// Web server port.
port: 9876,
// Enable / disable colors in the output (reporters and logs).
colors: true,
// Level of logging
// Possible values: config.LOG_DISABLE || config.LOG_ERROR || config.LOG_WARN || config.LOG_INFO || config.LOG_DEBUG
logLevel: config.LOG_DEBUG,
// Enable / disable watching file and executing tests whenever any file changes
autoWatch: DEBUG,
// Start these browsers, currently available:
// - Chrome
// - ChromeCanary
// - Firefox
// - Opera (has to be installed with `npm install karma-opera-launcher`)
// - Safari (only Mac; has to be installed with `npm install karma-safari-launcher`)
// - PhantomJS
// - IE (only Windows; has to be installed with `npm install karma-ie-launcher`)
browsers: ['Firefox', 'Chrome'],
// If browser does not capture in given timeout [ms], kill it
captureTimeout: 60000,
// Continuous Integration mode
// if true, it capture browsers, run tests and exit
singleRun: !DEBUG,
// See http://stackoverflow.com/a/27873086/1517919
customLaunchers: {
Chrome_travis_ci: {
base: 'Chrome',
flags: ['--no-sandbox']
}
}
};
if (process.env.TRAVIS){
configuration.browsers = ['Firefox', 'Chrome_travis_ci'];
}
config.set(configuration);
};