From b2a24e433c61cabcaf54484e86d5cc7c447575ff Mon Sep 17 00:00:00 2001 From: Abner Oliveira Date: Mon, 22 Aug 2016 06:41:51 -0300 Subject: [PATCH 1/2] =?UTF-8?q?added=20debug=20argument=20to=20(node:23405?= =?UTF-8?q?)=20fs:=20re-evaluating=20native=20module=20sources=20is=20not?= =?UTF-8?q?=20supported.=20If=20you=20are=20using=20the=20graceful-fs=20mo?= =?UTF-8?q?dule,=20please=20update=20it=20to=20a=20more=20recent=20version?= =?UTF-8?q?.=20=1B[2K=1B[1G=1B[=3F25h=1B[2K=1B[1G=1B[=3F25hYou=20have=20to?= =?UTF-8?q?=20be=20inside=20an=20angular-cli=20project=20in=20order=20to?= =?UTF-8?q?=20use=20the=20test=20command..=20This=20argument=20when=20pass?= =?UTF-8?q?ed=20disable=20instrumentation=20and=20coverage,=20allowing=20t?= =?UTF-8?q?o=20debug=20the=20source=20code=20when=20running=20tests?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- addon/ng2/blueprints/ng2/files/config/karma.conf.js | 2 +- addon/ng2/commands/test.ts | 1 + addon/ng2/models/webpack-build-test.js | 6 +++--- plugins/karma.js | 2 +- 4 files changed, 6 insertions(+), 5 deletions(-) diff --git a/addon/ng2/blueprints/ng2/files/config/karma.conf.js b/addon/ng2/blueprints/ng2/files/config/karma.conf.js index e5ab25543993..beaf8e13adc2 100644 --- a/addon/ng2/blueprints/ng2/files/config/karma.conf.js +++ b/addon/ng2/blueprints/ng2/files/config/karma.conf.js @@ -31,7 +31,7 @@ module.exports = function (config) { } }, angularCliConfig: './angular-cli.json', - reporters: ['progress', 'karma-remap-istanbul'], + reporters: config.debug ? ['progress'] : ['progress', 'karma-remap-istanbul'], port: 9876, colors: true, logLevel: config.LOG_INFO, diff --git a/addon/ng2/commands/test.ts b/addon/ng2/commands/test.ts index 5d62c7ba486f..6e2e91d4dcc2 100644 --- a/addon/ng2/commands/test.ts +++ b/addon/ng2/commands/test.ts @@ -5,6 +5,7 @@ import * as TestTask from '../tasks/test'; module.exports = TestCommand.extend({ availableOptions: [ { name: 'watch', type: Boolean, default: true, aliases: ['w'] }, + { name: 'debug', type: Boolean, default: false, aliases: ['d'] }, { name: 'browsers', type: String }, { name: 'colors', type: Boolean }, { name: 'log-level', type: String }, diff --git a/addon/ng2/models/webpack-build-test.js b/addon/ng2/models/webpack-build-test.js index 38e04f1fd43e..bfce1e91455d 100644 --- a/addon/ng2/models/webpack-build-test.js +++ b/addon/ng2/models/webpack-build-test.js @@ -3,8 +3,8 @@ const path = require('path'); const webpack = require('webpack'); -const getWebpackTestConfig = function(projectRoot, appConfig) { - +const getWebpackTestConfig = function(projectRoot, appConfig, debug=false) { + const appRoot = path.resolve(projectRoot, appConfig.root); return { @@ -66,7 +66,7 @@ const getWebpackTestConfig = function(projectRoot, appConfig) { { test: /\.(jpg|png)$/, loader: 'url-loader?limit=128000' }, { test: /\.html$/, loader: 'raw-loader', exclude: [path.resolve(appRoot, appConfig.index)] } ], - postLoaders: [ + postLoaders: debug ? [] : [ { test: /\.(js|ts)$/, loader: 'sourcemap-istanbul-instrumenter-loader', exclude: [ diff --git a/plugins/karma.js b/plugins/karma.js index 70758bc56e60..50e692eae221 100644 --- a/plugins/karma.js +++ b/plugins/karma.js @@ -9,7 +9,7 @@ const init = (config) => { const appConfig = angularCliConfig.apps[0]; // add webpack config - config.webpack = getWebpackTestConfig(config.basePath, appConfig); + config.webpack = getWebpackTestConfig(config.basePath, appConfig, config.debug); config.webpackMiddleware = { noInfo: true, // Hide webpack output because its noisy. stats: { // Also prevent chunk and module display output, cleaner look. Only emit errors. From fda89edb001f1a556e1c32362af0b2465ec59a7a Mon Sep 17 00:00:00 2001 From: Abner Oliveira Date: Mon, 22 Aug 2016 06:50:25 -0300 Subject: [PATCH 2/2] added debug argument to ng test task. This argument when passed disable instrumentation and coverage, allowing to debug the source code when running tests --- addon/ng2/blueprints/ng2/files/karma.conf.js | 2 +- addon/ng2/commands/test.ts | 1 + addon/ng2/models/webpack-build-test.js | 4 ++-- plugins/karma.js | 2 +- 4 files changed, 5 insertions(+), 4 deletions(-) diff --git a/addon/ng2/blueprints/ng2/files/karma.conf.js b/addon/ng2/blueprints/ng2/files/karma.conf.js index 2076fb21eb8d..de1861602455 100644 --- a/addon/ng2/blueprints/ng2/files/karma.conf.js +++ b/addon/ng2/blueprints/ng2/files/karma.conf.js @@ -31,7 +31,7 @@ module.exports = function (config) { } }, angularCliConfig: './angular-cli.json', - reporters: ['progress', 'karma-remap-istanbul'], + reporters: config.debug ? ['progress'] : ['progress', 'karma-remap-istanbul'], port: 9876, colors: true, logLevel: config.LOG_INFO, diff --git a/addon/ng2/commands/test.ts b/addon/ng2/commands/test.ts index 5d62c7ba486f..6e2e91d4dcc2 100644 --- a/addon/ng2/commands/test.ts +++ b/addon/ng2/commands/test.ts @@ -5,6 +5,7 @@ import * as TestTask from '../tasks/test'; module.exports = TestCommand.extend({ availableOptions: [ { name: 'watch', type: Boolean, default: true, aliases: ['w'] }, + { name: 'debug', type: Boolean, default: false, aliases: ['d'] }, { name: 'browsers', type: String }, { name: 'colors', type: Boolean }, { name: 'log-level', type: String }, diff --git a/addon/ng2/models/webpack-build-test.js b/addon/ng2/models/webpack-build-test.js index 38e04f1fd43e..b1daaf8f41cb 100644 --- a/addon/ng2/models/webpack-build-test.js +++ b/addon/ng2/models/webpack-build-test.js @@ -3,7 +3,7 @@ const path = require('path'); const webpack = require('webpack'); -const getWebpackTestConfig = function(projectRoot, appConfig) { +const getWebpackTestConfig = function(projectRoot, appConfig, debug=false) { const appRoot = path.resolve(projectRoot, appConfig.root); @@ -66,7 +66,7 @@ const getWebpackTestConfig = function(projectRoot, appConfig) { { test: /\.(jpg|png)$/, loader: 'url-loader?limit=128000' }, { test: /\.html$/, loader: 'raw-loader', exclude: [path.resolve(appRoot, appConfig.index)] } ], - postLoaders: [ + postLoaders: debug ? [] : [ { test: /\.(js|ts)$/, loader: 'sourcemap-istanbul-instrumenter-loader', exclude: [ diff --git a/plugins/karma.js b/plugins/karma.js index 70758bc56e60..50e692eae221 100644 --- a/plugins/karma.js +++ b/plugins/karma.js @@ -9,7 +9,7 @@ const init = (config) => { const appConfig = angularCliConfig.apps[0]; // add webpack config - config.webpack = getWebpackTestConfig(config.basePath, appConfig); + config.webpack = getWebpackTestConfig(config.basePath, appConfig, config.debug); config.webpackMiddleware = { noInfo: true, // Hide webpack output because its noisy. stats: { // Also prevent chunk and module display output, cleaner look. Only emit errors.