-
Notifications
You must be signed in to change notification settings - Fork 593
/
karma.conf.js
59 lines (57 loc) · 1.34 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
// Karma configuration file, see link for more information
// https://karma-runner.github.io/6.4/config/configuration-file.html
module.exports = function (config) {
config.set({
basePath: '.',
frameworks: ['qunit', 'webpack'],
files: [
{pattern: 'tests/**/*.test.js', watched: false}
],
client: {
clearContext: false,
qunit: {
showUI: true,
testTimeout: 5000
}
},
preprocessors: {
'src/**/*.js': ['webpack', 'sourcemap'],
'tests/**/*.test.js': ['webpack']
},
coverageReporter: {
dir: require('path').join(__dirname, './build/coverage/'),
reporters: [
{type: 'html', subdir: 'report-html'},
{type: 'text-summary'}
],
check: {
global: {
statements: 30,
branches: 34,
functions: 30,
lines: 30
}
}
},
reporters: ['progress'],
logLevel: config.LOG_INFO,
browsers: ['Chrome'],
restartOnFileChange: true,
webpack: webpackConfig(),
jsonReporter: {
stdout: false,
outputFile: './build/test-results.json'
},
});
};
/**
* Get the webpack config to pass to Karma.
*
* @returns {object} The config.
*/
function webpackConfig() {
const config = require('./webpack.test.js');
delete config.entry;
delete config.output;
return config;
}