From 00687838daee5d81cd33549ab5d8b63fe9d7ab24 Mon Sep 17 00:00:00 2001 From: Alan Agius Date: Thu, 12 Nov 2020 18:34:08 +0100 Subject: [PATCH] fix(@angular-devkit/build-angular): show missing karma-coverage error when it's not configured This fixes an issue where previously `karma-coverage must be installed in order to run code coverage` error was shown incorrectly. Closes: #19359 (cherry picked from commit 88a379452460ed81a262a952d8a1735ff10f04ec) --- .../build_angular/src/webpack/plugins/karma.ts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/angular_devkit/build_angular/src/webpack/plugins/karma.ts b/packages/angular_devkit/build_angular/src/webpack/plugins/karma.ts index 5caaf4690f30..1d0777b009d1 100644 --- a/packages/angular_devkit/build_angular/src/webpack/plugins/karma.ts +++ b/packages/angular_devkit/build_angular/src/webpack/plugins/karma.ts @@ -104,10 +104,10 @@ const init: any = (config: any, emitter: any, customFileHandlers: any) => { else if (hasIstanbulPlugin && !hasIstanbulReporter) { // coverage-istanbul is deprecated in favor of karma-coverage reporters.push('coverage-istanbul'); + } else if (!hasCoveragePlugin && !hasIstanbulPlugin) { + throw new Error('karma-coverage must be installed in order to run code coverage.'); } - else { - throw new Error('karma-coverage must be installed in order to run code coverage'); - } + if (hasIstanbulPlugin) { logger.warn(`'karma-coverage-istanbul-reporter' usage has been deprecated since version 11.\n` + `Please install 'karma-coverage' and update 'karma.conf.js.' ` +