Карма-вебпак angularjs машинописная битая исходная карта во встроенном режиме

У меня есть следующая конфигурация:

karma.conf.js

var webpack = require('./webpack/webpack.dev');
var port = process.env['KARMA_PORT'] || '9876';

module.exports = (config) => {
  config.set({
    basePath: '',
    frameworks: ['modules', 'jasmine'],
    files: [
      'src/**/*.ts'
    ],
    exclude: [],
    preprocessors: {
      'src/**/*.ts': ['webpack', 'sourcemap']
    },
    webpack: webpack,

webpack.dev.js

devtool: 'inline-source-map',
plugins: [
    new webpack.SourceMapDevToolPlugin({
        filename: null, // if no value is provided the sourcemap is inlined
        test: /\.(ts|js)($|\?)/i // process .js and .ts files only
    })
],
loaders: [{
    test: /\.ts$/,
    include: path.resolve('./src'),
    exclude: /node_modules/,
    use: [
        'awesome-typescript-loader'            
    ]
},

tsconfig.json

{
  "awesomeTypescriptLoaderOptions": {
    "forkChecker": true,
    "useWebpackText": true,
    "transpileOnly": false
  },
  "compilerOptions": {
    "target": "es5",
    "module": "commonjs",
    "moduleResolution": "node",
    "inlineSourceMap": true,
    "sourceMap": false,
    "emitDecoratorMetadata": true,
    "experimentalDecorators": true,
    "removeComments": false,
    "noImplicitAny": false,
    "lib": [
      "dom",
      "es2015"
    ],
    "types" : [
      "jquery",
      "jasmine",
      "angular-mocks",
      "angular-animate",
      "node"
    ],
    "typeRoots": [
      "node_modules/@types",
      "./node_modules",
      "./typings/global.d.ts"      
    ]
  },
  "files": [
    "typings/global.d.ts",
    "src/some/index.ts"
  ],
  "include": [
    "./typings/**/*.ts"
  ],
  "exclude": [
    "node_modules"
  ]
}

С этим охватом конфигурации он работает правильно: remap-instabul корректно перераспределяет код, но когда я пытаюсь отладить юнит-тесты в Chrome - исходные карты не работают. Если я установлю в tsconfig.json sourceMaps: true и inlineSourceMaps: false - исходные карты будут хорошо работать в Chrome, но покрытие будет нарушено:(

Какова правильная конфигурация, чтобы исходные карты работали в модульных тестах и ​​в покрытии обоих?

0 ответов

Другие вопросы по тегам