-
Notifications
You must be signed in to change notification settings - Fork 6
/
karma.conf.js
67 lines (65 loc) · 1.94 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
/*global module:true*/
// Karma configuration
// Generated on Sun Aug 20 2017 20:38:14 GMT+0200 (CEST)
module.exports = (config) => {
config.set({
frameworks: ['jasmine'],
files: [
'./node_modules/babel-polyfill/dist/polyfill.js',
'src/**/*.spec.js',
],
browsers: ['PhantomJS'],
logLevel: config.LOG_ERROR,
preprocessors: {
['src/**/*.js']: ['webpack'],
},
reporters: ['spec', 'coverage'],
coverageReporter: {
type: 'lcov',
dir: './coverage/',
subdir: function(browser, platform) {
// normalization process to keep a consistent browser name
return browser.toLowerCase().split(' ')[0];
},
reporters: [
{
type: 'html',
subdir: 'report-html',
},
{
type: 'text-summary',
},
{
type: 'lcovonly',
},
],
},
webpack: {
cache: false,
module: {
rules: [
{
test: /\.js?$/,
exclude: /(node_modules)/,
loader: 'babel-loader',
options: {
cacheDirectory: true,
},
},
{
test: /\.js?$/,
exclude: /(node_modules|(\.spec\.js$))/,
loader: 'istanbul-instrumenter-loader',
options: {
cacheDirectory: true,
esModules: true,
},
},
],
},
},
webpackMiddleware: {
noInfo: true,
},
});
};