-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy pathkarma.conf.js
70 lines (69 loc) · 2.02 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
// Karma configuration file, see link for more information
// https://karma-runner.github.io/0.13/config/configuration-file.html
module.exports = function (config) {
config.set({
basePath: '',
frameworks: ['mocha', '@angular/cli'],
plugins: [
require('karma-mocha'),
require('karma-chai'),
require('karma-sinon'),
require('karma-sinon-chai'),
require('karma-chrome-launcher'),
require('karma-phantomjs-launcher'),
require('karma-mocha-reporter'),
require('karma-coverage-istanbul-reporter'),
require('karma-istanbul-threshold'),
require('@angular/cli/plugins/karma')
],
client:{
clearContext: false // leave Jasmine Spec Runner output visible in browser
},
files: [
{ pattern: 'node_modules/sinon/pkg/sinon.js', instrument: false },
{ pattern: 'node_modules/chai/chai.js', instrument: false },
{ pattern: 'node_modules/sinon-chai/lib/sinon-chai.js', instrument: false },
{ pattern: './src/test.ts', watched: false }
],
preprocessors: {
'./src/test.ts': ['@angular/cli']
},
mime: {
'text/x-typescript': ['ts','tsx']
},
coverageIstanbulReporter: {
reports: [ 'html', 'lcovonly', 'json' ],
fixWebpackSourcePaths: true
},
istanbulThresholdReporter: {
src: 'coverage/coverage-final.json',
reporters: ['text'],
thresholds: {
global: {
statements: 95.01,
branches: 75.59,
lines: 91.89,
functions: 89.23
},
each: {
statements: 75.76,
branches: 33.33,
lines: 75,
functions: 41.67
}
}
},
angularCli: {
environment: 'dev'
},
reporters: config.angularCli && config.angularCli.codeCoverage
? ['progress', 'coverage-istanbul', 'istanbul-threshold']
: ['progress', 'mocha'],
port: 9876,
colors: true,
logLevel: config.LOG_INFO,
autoWatch: true,
browsers: ['Chrome'],
singleRun: false
});
};