From 711a175764acfb4c453fb53840a18973fe243a16 Mon Sep 17 00:00:00 2001 From: Alan Agius Date: Mon, 8 Oct 2018 16:11:27 +0200 Subject: [PATCH] fix(@schematics/angular): codeCoverage exclude is not being migrated Fixes #10936 --- .../schematics/angular/migrations/update-6/index.ts | 11 ++++++++++- .../angular/migrations/update-6/index_spec.ts | 6 ++++++ 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/packages/schematics/angular/migrations/update-6/index.ts b/packages/schematics/angular/migrations/update-6/index.ts index e5338f19213d..f64ab8aa1ee7 100644 --- a/packages/schematics/angular/migrations/update-6/index.ts +++ b/packages/schematics/angular/migrations/update-6/index.ts @@ -472,7 +472,16 @@ function extractProjectsConfig( if (app.testTsconfig) { testOptions.tsConfig = appRoot + '/' + app.testTsconfig; - } + } + + const codeCoverageExclude = config.test + && config.test.codeCoverage + && config.test.codeCoverage.exclude; + + if (codeCoverageExclude) { + testOptions.codeCoverageExclude = codeCoverageExclude; + } + testOptions.scripts = (app.scripts || []).map(_extraEntryMapper); testOptions.styles = (app.styles || []).map(_extraEntryMapper); testOptions.assets = (app.assets || []).map(_mapAssets).filter(x => !!x); diff --git a/packages/schematics/angular/migrations/update-6/index_spec.ts b/packages/schematics/angular/migrations/update-6/index_spec.ts index d4ff5748eb6e..c614f718f130 100644 --- a/packages/schematics/angular/migrations/update-6/index_spec.ts +++ b/packages/schematics/angular/migrations/update-6/index_spec.ts @@ -93,6 +93,11 @@ describe('Migration to v6', () => { karma: { config: './karma.conf.js', }, + codeCoverage: { + exclude: [ + './excluded.spec.ts', + ], + }, }, defaults: { styleExt: 'css', @@ -657,6 +662,7 @@ describe('Migration to v6', () => { expect(test.options.polyfills).toEqual('src/polyfills.ts'); expect(test.options.tsConfig).toEqual('src/tsconfig.spec.json'); expect(test.options.karmaConfig).toEqual('./karma.conf.js'); + expect(test.options.codeCoverageExclude).toEqual(['./excluded.spec.ts']); expect(test.options.scripts).toEqual([]); expect(test.options.styles).toEqual(['src/styles.css']); expect(test.options.assets).toEqual([