xwt
昨天 0d3eadb50310ca60b8871e967e64da01aa25a9ad
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
const DEBUG = !!process.env.DEBUG
if (!DEBUG) process.env.CHROME_BIN = require('puppeteer').executablePath()
 
module.exports = function (config) {
  config.set({
    basePath: '',
    frameworks: ['mocha', 'chai'],
    plugins: [
      require('karma-mocha'),
      require('karma-chai'),
      require('karma-chrome-launcher'),
      require('karma-rollup-preprocessor')
      // require('karma-coverage')
    ],
    files: [
      { pattern: 'test/*-spec.js', watched: false }
    ],
    exclude: [],
    preprocessors: {
      'test/*-spec.js': ['rollup']
    },
    // coverageReporter: {
    //   type: 'html',
    //   dir: 'coverage/'
    // },
    rollupPreprocessor: {
      plugins: [
        require('rollup-plugin-node-resolve')({
          jsnext: true,
          browser: true
        }),
        require('rollup-plugin-commonjs')(),
        require('rollup-plugin-babel')(),
        require('rollup-plugin-replace')({
          'process.env.NODE_ENV': JSON.stringify('production')
        })
      ],
      format: 'iife', // Helps prevent naming collisions.
      name: 'lib', // Required for 'iife' format.
      sourcemap: 'inline' // Sensible for testing.
    },
    reporters: ['progress'],
    port: 9876,
    colors: true,
    logLevel: config.LOG_INFO,
    autoWatch: true,
    browsers: DEBUG ? ['Chrome'] : ['ChromeHeadless'],
    singleRun: !DEBUG,
    concurrency: Infinity
  })
}