Skip to content

Commit 6077037

Browse files
committed
feat(build-angular): Switch to karma-coverage
1 parent f4f5e0b commit 6077037

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
@@ -160,7 +160,7 @@
160160
"jsonc-parser": "2.2.1",
161161
"karma": "~5.0.0",
162162
"karma-chrome-launcher": "~3.1.0",
163-
"karma-coverage-istanbul-reporter": "~3.0.0",
163+
"karma-coverage": "~2.0.0",
164164
"karma-jasmine": "~3.3.0",
165165
"karma-jasmine-html-reporter": "^1.5.0",
166166
"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
@@ -7606,11 +7606,6 @@ istanbul-lib-coverage@^1.2.0, istanbul-lib-coverage@^1.2.1:
76067606
resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-1.2.1.tgz#ccf7edcd0a0bb9b8f729feeb0930470f9af664f0"
76077607
integrity sha512-PzITeunAgyGbtY1ibVIUiV679EFChHjoMNRibEIobvmrCRaIgwLxNucOSimtNWUhEib/oO7QY2imD75JVgCJWQ==
76087608

7609-
istanbul-lib-coverage@^2.0.5:
7610-
version "2.0.5"
7611-
resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.5.tgz#675f0ab69503fad4b1d849f736baaca803344f49"
7612-
integrity sha512-8aXznuEPCJvGnMSRft4udDRDtb1V3pkQkMMI5LI+6HuQz5oQ4J2UFn1H82raA3qJtyOLkkwVqICBQkjnGtn5mA==
7613-
76147609
istanbul-lib-coverage@^3.0.0:
76157610
version "3.0.0"
76167611
resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz#f5944a37c70b550b02a78a5c3b2055b280cec8ec"
@@ -7645,15 +7640,13 @@ istanbul-lib-report@^3.0.0:
76457640
make-dir "^3.0.0"
76467641
supports-color "^7.1.0"
76477642

7648-
istanbul-lib-source-maps@^3.0.6:
7649-
version "3.0.6"
7650-
resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-3.0.6.tgz#284997c48211752ec486253da97e3879defba8c8"
7651-
integrity sha512-R47KzMtDJH6X4/YW9XTx+jrLnZnscW4VpNN+1PViSYTejLVPWv7oov+Duf8YQSPyVRUvueQqz1TcsC6mooZTXw==
7643+
istanbul-lib-source-maps@^4.0.0:
7644+
version "4.0.0"
7645+
resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.0.tgz#75743ce6d96bb86dc7ee4352cf6366a23f0b1ad9"
7646+
integrity sha512-c16LpFRkR8vQXyHZ5nLpY35JZtzj1PQY1iZmesUbf1FZHbIupcWfjgOXBY9YHkLEQ6puz1u4Dgj6qmU/DisrZg==
76527647
dependencies:
76537648
debug "^4.1.1"
7654-
istanbul-lib-coverage "^2.0.5"
7655-
make-dir "^2.1.0"
7656-
rimraf "^2.6.3"
7649+
istanbul-lib-coverage "^3.0.0"
76577650
source-map "^0.6.1"
76587651

76597652
istanbul-reports@^1.3.0:
@@ -7663,7 +7656,7 @@ istanbul-reports@^1.3.0:
76637656
dependencies:
76647657
handlebars "^4.0.3"
76657658

7666-
istanbul-reports@^3.0.2:
7659+
istanbul-reports@^3.0.0:
76677660
version "3.0.2"
76687661
resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.0.2.tgz#d593210e5000683750cb09fc0644e4b6e27fd53b"
76697662
integrity sha512-9tZvz7AiR3PEDNGiV9vIouQ/EAcqMXFmkcA1CDFTwOB98OZVDL0PH9glHotf5Ugp6GCOTypfzGWI/OqjWNCRUw==
@@ -7962,15 +7955,16 @@ karma-chrome-launcher@~3.1.0:
79627955
dependencies:
79637956
which "^1.2.1"
79647957

7965-
karma-coverage-istanbul-reporter@~3.0.0:
7966-
version "3.0.2"
7967-
resolved "https://registry.yarnpkg.com/karma-coverage-istanbul-reporter/-/karma-coverage-istanbul-reporter-3.0.2.tgz#b7f3393b13c7e3dafa5410a68d98d327ae21e807"
7968-
integrity sha512-pg23tKKF867UIJUIZF252cNbiBnuMIPOMkeiULzjysr9K267Js2O/SoQBL1PCPctJVzvhOkE47yQPUKrWtyl6w==
7958+
karma-coverage@~2.0.0:
7959+
version "2.0.2"
7960+
resolved "https://registry.yarnpkg.com/karma-coverage/-/karma-coverage-2.0.2.tgz#75d5ce983033d8f738d57df82948dc3534392519"
7961+
integrity sha512-zge5qiGEIKDdzWciQwP4p0LSac4k/L6VfrBsERMUn5mpDvxhv1sPVOrSlpzpi70T7NhuEy4bgnpAKIYuumIMCw==
79697962
dependencies:
79707963
istanbul-lib-coverage "^3.0.0"
7964+
istanbul-lib-instrument "^4.0.1"
79717965
istanbul-lib-report "^3.0.0"
7972-
istanbul-lib-source-maps "^3.0.6"
7973-
istanbul-reports "^3.0.2"
7966+
istanbul-lib-source-maps "^4.0.0"
7967+
istanbul-reports "^3.0.0"
79747968
minimatch "^3.0.4"
79757969

79767970
karma-jasmine-html-reporter@^1.5.0:
@@ -8598,7 +8592,7 @@ magic-string@^0.22.4:
85988592
dependencies:
85998593
vlq "^0.2.2"
86008594

8601-
make-dir@^2.0.0, make-dir@^2.1.0:
8595+
make-dir@^2.0.0:
86028596
version "2.1.0"
86038597
resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-2.1.0.tgz#5f0310e18b8be898cc07009295a30ae41e91e6f5"
86048598
integrity sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==

0 commit comments

Comments
 (0)