Skip to content

Commit 6de7228

Browse files
committed
feat(build-angular): Switch to karma-coverage
1 parent f15ec19 commit 6de7228

File tree

12 files changed

+39
-46
lines changed

12 files changed

+39
-46
lines changed

docs/documentation/stories/code-coverage.md

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,12 +16,11 @@ Using the code coverage percentages we can estimate how much of our code is test
1616

1717
## Code Coverage Enforcement
1818

19-
If your team decides on a set minimum amount to be unit tested you can enforce this minimum with the Angular CLI. For example our team would like the code base to have a minimum of 80% code coverage. To enable this open the `karma.conf.js` and add the following in the `coverageIstanbulReporter:` key
19+
If your team decides on a set minimum amount to be unit tested you can enforce this minimum with the Angular CLI. For example our team would like the code base to have a minimum of 80% code coverage. To enable this open the `karma.conf.js` and add the following in the `coverageReporter:` key
2020

2121
```javascript
22-
coverageIstanbulReporter: {
22+
coverageReporter: {
2323
reports: [ 'html', 'lcovonly' ],
24-
fixWebpackSourcePaths: true,
2524
thresholds: {
2625
statements: 80,
2726
lines: 80,
@@ -44,4 +43,4 @@ Another option to simplify the usage of code coverage, instead of passing it via
4443
}
4544
```
4645

47-
This will produce code coverage results whenever tests are run for the project.
46+
This will produce code coverage results whenever tests are run for the project.

integration/angular_cli/karma.conf.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,16 +12,16 @@ module.exports = function (config) {
1212
require('karma-jasmine'),
1313
require('karma-chrome-launcher'),
1414
require('karma-jasmine-html-reporter'),
15-
require('karma-coverage-istanbul-reporter'),
15+
require('karma-coverage'),
1616
require('@angular-devkit/build-angular/plugins/karma'),
1717
],
1818
client: {
1919
clearContext: false, // leave Jasmine Spec Runner output visible in browser
2020
},
21-
coverageIstanbulReporter: {
21+
coverageReporter: {
2222
dir: path.join(__dirname, 'coverage'),
23+
subdir: '.',
2324
reports: ['html', 'lcovonly'],
24-
fixWebpackSourcePaths: true,
2525
},
2626
reporters: ['progress', 'kjhtml'],
2727
port: 9876,

integration/angular_cli/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@
3636
"jasmine-spec-reporter": "~5.0.0",
3737
"karma": "~4.4.1",
3838
"karma-chrome-launcher": "~3.1.0",
39-
"karma-coverage-istanbul-reporter": "~2.1.0",
39+
"karma-coverage": "~2.0.2",
4040
"karma-jasmine": "~3.3.0",
4141
"karma-jasmine-html-reporter": "^1.5.0",
4242
"protractor": "~5.4.3",

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -159,7 +159,7 @@
159159
"jquery": "^3.3.1",
160160
"karma": "~5.0.0",
161161
"karma-chrome-launcher": "~3.1.0",
162-
"karma-coverage-istanbul-reporter": "~3.0.0",
162+
"karma-coverage": "~2.0.0",
163163
"karma-jasmine": "~3.3.0",
164164
"karma-jasmine-html-reporter": "^1.5.0",
165165
"karma-source-map-support": "1.4.0",

packages/angular_devkit/build_angular/BUILD.bazel

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -267,7 +267,7 @@ LARGE_SPECS = {
267267
"extra_deps": [
268268
"@npm//karma",
269269
"@npm//karma-chrome-launcher",
270-
"@npm//karma-coverage-istanbul-reporter",
270+
"@npm//karma-coverage",
271271
"@npm//karma-jasmine",
272272
"@npm//karma-jasmine-html-reporter",
273273
"@npm//puppeteer",

packages/angular_devkit/build_angular/src/angular-cli-files/plugins/karma.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -70,10 +70,10 @@ const init: any = (config: any, emitter: any, customFileHandlers: any) => {
7070
successCb = config.buildWebpack.successCb;
7171
failureCb = config.buildWebpack.failureCb;
7272

73-
// When using code-coverage, auto-add coverage-istanbul.
73+
// When using code-coverage, auto-add karma-coverage.
7474
config.reporters = config.reporters || [];
75-
if (options.codeCoverage && config.reporters.indexOf('coverage-istanbul') === -1) {
76-
config.reporters.push('coverage-istanbul');
75+
if (options.codeCoverage && config.reporters.indexOf('coverage') === -1) {
76+
config.reporters.push('coverage');
7777
}
7878

7979
// Add a reporter that fixes sourcemap urls.

packages/angular_devkit/build_angular/test/hello-world-app/karma.conf.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,16 +19,16 @@ module.exports = function(config) {
1919
require('karma-jasmine'),
2020
require('karma-chrome-launcher'),
2121
require('karma-jasmine-html-reporter'),
22-
require('karma-coverage-istanbul-reporter'),
22+
require('karma-coverage'),
2323
require('@angular-devkit/build-angular/plugins/karma'),
2424
],
2525
client: {
2626
clearContext: false, // leave Jasmine Spec Runner output visible in browser
2727
},
28-
coverageIstanbulReporter: {
28+
coverageReporter: {
2929
dir: path.join(__dirname, 'coverage'),
30+
subdir: '.',
3031
reports: ['html', 'lcovonly'],
31-
fixWebpackSourcePaths: true,
3232
},
3333
reporters: ['progress', 'kjhtml'],
3434
port: 9876,

packages/angular_devkit/build_ng_packagr/test/ng-packaged/projects/lib/karma.conf.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,16 +16,16 @@ module.exports = function (config) {
1616
require('karma-jasmine'),
1717
require('karma-chrome-launcher'),
1818
require('karma-jasmine-html-reporter'),
19-
require('karma-coverage-istanbul-reporter'),
19+
require('karma-coverage'),
2020
require('@angular-devkit/build-angular/plugins/karma')
2121
],
2222
client: {
2323
clearContext: false // leave Jasmine Spec Runner output visible in browser
2424
},
25-
coverageIstanbulReporter: {
25+
coverageReporter: {
2626
dir: require('path').join(__dirname, 'coverage'),
27+
subdir: '.',
2728
reports: ['html', 'lcovonly'],
28-
fixWebpackSourcePaths: true
2929
},
3030
reporters: ['progress', 'kjhtml'],
3131
port: 9876,

packages/schematics/angular/application/files/karma.conf.js.template

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,16 +9,16 @@ module.exports = function (config) {
99
require('karma-jasmine'),
1010
require('karma-chrome-launcher'),
1111
require('karma-jasmine-html-reporter'),
12-
require('karma-coverage-istanbul-reporter'),
12+
require('karma-coverage'),
1313
require('@angular-devkit/build-angular/plugins/karma')
1414
],
1515
client: {
1616
clearContext: false // leave Jasmine Spec Runner output visible in browser
1717
},
18-
coverageIstanbulReporter: {
18+
coverageReporter: {
1919
dir: require('path').join(__dirname, '<%= relativePathToWorkspaceRoot %>/coverage/<%= appName%>'),
20+
subdir: '.',
2021
reports: ['html', 'lcovonly', 'text-summary'],
21-
fixWebpackSourcePaths: true
2222
},
2323
reporters: ['progress', 'kjhtml'],
2424
port: 9876,

packages/schematics/angular/library/files/karma.conf.js.template

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,16 +9,16 @@ module.exports = function (config) {
99
require('karma-jasmine'),
1010
require('karma-chrome-launcher'),
1111
require('karma-jasmine-html-reporter'),
12-
require('karma-coverage-istanbul-reporter'),
12+
require('karma-coverage'),
1313
require('@angular-devkit/build-angular/plugins/karma')
1414
],
1515
client: {
1616
clearContext: false // leave Jasmine Spec Runner output visible in browser
1717
},
18-
coverageIstanbulReporter: {
18+
coverageReporter: {
1919
dir: require('path').join(__dirname, '<%= relativePathToWorkspaceRoot %>/coverage/<%= folderName %>'),
20+
subdir: '.',
2021
reports: ['html', 'lcovonly', 'text-summary'],
21-
fixWebpackSourcePaths: true
2222
},
2323
reporters: ['progress', 'kjhtml'],
2424
port: 9876,

packages/schematics/angular/workspace/files/package.json.template

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@
3434
"jasmine-spec-reporter": "~5.0.0",
3535
"karma": "~5.0.0",
3636
"karma-chrome-launcher": "~3.1.0",
37-
"karma-coverage-istanbul-reporter": "~3.0.2",
37+
"karma-coverage": "~2.0.2",
3838
"karma-jasmine": "~3.3.0",
3939
"karma-jasmine-html-reporter": "^1.5.0",
4040
"protractor": "~7.0.0",<% } %>

yarn.lock

Lines changed: 14 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -7485,11 +7485,6 @@ istanbul-lib-coverage@^1.2.0, istanbul-lib-coverage@^1.2.1:
74857485
resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-1.2.1.tgz#ccf7edcd0a0bb9b8f729feeb0930470f9af664f0"
74867486
integrity sha512-PzITeunAgyGbtY1ibVIUiV679EFChHjoMNRibEIobvmrCRaIgwLxNucOSimtNWUhEib/oO7QY2imD75JVgCJWQ==
74877487

7488-
istanbul-lib-coverage@^2.0.5:
7489-
version "2.0.5"
7490-
resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.5.tgz#675f0ab69503fad4b1d849f736baaca803344f49"
7491-
integrity sha512-8aXznuEPCJvGnMSRft4udDRDtb1V3pkQkMMI5LI+6HuQz5oQ4J2UFn1H82raA3qJtyOLkkwVqICBQkjnGtn5mA==
7492-
74937488
istanbul-lib-coverage@^3.0.0:
74947489
version "3.0.0"
74957490
resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz#f5944a37c70b550b02a78a5c3b2055b280cec8ec"
@@ -7524,15 +7519,13 @@ istanbul-lib-report@^3.0.0:
75247519
make-dir "^3.0.0"
75257520
supports-color "^7.1.0"
75267521

7527-
istanbul-lib-source-maps@^3.0.6:
7528-
version "3.0.6"
7529-
resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-3.0.6.tgz#284997c48211752ec486253da97e3879defba8c8"
7530-
integrity sha512-R47KzMtDJH6X4/YW9XTx+jrLnZnscW4VpNN+1PViSYTejLVPWv7oov+Duf8YQSPyVRUvueQqz1TcsC6mooZTXw==
7522+
istanbul-lib-source-maps@^4.0.0:
7523+
version "4.0.0"
7524+
resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.0.tgz#75743ce6d96bb86dc7ee4352cf6366a23f0b1ad9"
7525+
integrity sha512-c16LpFRkR8vQXyHZ5nLpY35JZtzj1PQY1iZmesUbf1FZHbIupcWfjgOXBY9YHkLEQ6puz1u4Dgj6qmU/DisrZg==
75317526
dependencies:
75327527
debug "^4.1.1"
7533-
istanbul-lib-coverage "^2.0.5"
7534-
make-dir "^2.1.0"
7535-
rimraf "^2.6.3"
7528+
istanbul-lib-coverage "^3.0.0"
75367529
source-map "^0.6.1"
75377530

75387531
istanbul-reports@^1.3.0:
@@ -7542,7 +7535,7 @@ istanbul-reports@^1.3.0:
75427535
dependencies:
75437536
handlebars "^4.0.3"
75447537

7545-
istanbul-reports@^3.0.2:
7538+
istanbul-reports@^3.0.0:
75467539
version "3.0.2"
75477540
resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.0.2.tgz#d593210e5000683750cb09fc0644e4b6e27fd53b"
75487541
integrity sha512-9tZvz7AiR3PEDNGiV9vIouQ/EAcqMXFmkcA1CDFTwOB98OZVDL0PH9glHotf5Ugp6GCOTypfzGWI/OqjWNCRUw==
@@ -7823,15 +7816,16 @@ karma-chrome-launcher@~3.1.0:
78237816
dependencies:
78247817
which "^1.2.1"
78257818

7826-
karma-coverage-istanbul-reporter@~3.0.0:
7827-
version "3.0.2"
7828-
resolved "https://registry.yarnpkg.com/karma-coverage-istanbul-reporter/-/karma-coverage-istanbul-reporter-3.0.2.tgz#b7f3393b13c7e3dafa5410a68d98d327ae21e807"
7829-
integrity sha512-pg23tKKF867UIJUIZF252cNbiBnuMIPOMkeiULzjysr9K267Js2O/SoQBL1PCPctJVzvhOkE47yQPUKrWtyl6w==
7819+
karma-coverage@~2.0.0:
7820+
version "2.0.2"
7821+
resolved "https://registry.yarnpkg.com/karma-coverage/-/karma-coverage-2.0.2.tgz#75d5ce983033d8f738d57df82948dc3534392519"
7822+
integrity sha512-zge5qiGEIKDdzWciQwP4p0LSac4k/L6VfrBsERMUn5mpDvxhv1sPVOrSlpzpi70T7NhuEy4bgnpAKIYuumIMCw==
78307823
dependencies:
78317824
istanbul-lib-coverage "^3.0.0"
7825+
istanbul-lib-instrument "^4.0.1"
78327826
istanbul-lib-report "^3.0.0"
7833-
istanbul-lib-source-maps "^3.0.6"
7834-
istanbul-reports "^3.0.2"
7827+
istanbul-lib-source-maps "^4.0.0"
7828+
istanbul-reports "^3.0.0"
78357829
minimatch "^3.0.4"
78367830

78377831
karma-jasmine-html-reporter@^1.5.0:
@@ -8425,7 +8419,7 @@ magic-string@^0.22.4:
84258419
dependencies:
84268420
vlq "^0.2.2"
84278421

8428-
make-dir@^2.0.0, make-dir@^2.1.0:
8422+
make-dir@^2.0.0:
84298423
version "2.1.0"
84308424
resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-2.1.0.tgz#5f0310e18b8be898cc07009295a30ae41e91e6f5"
84318425
integrity sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==

0 commit comments

Comments
 (0)