73 lines
		
	
	
	
		
			1.9 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			73 lines
		
	
	
	
		
			1.9 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| // This is a karma config file. For more details see
 | |
| //   http://karma-runner.github.io/0.13/config/configuration-file.html
 | |
| // we are also using it with karma-webpack
 | |
| //   https://github.com/webpack/karma-webpack
 | |
| 
 | |
| // var path = require('path')
 | |
| const merge = require('webpack-merge')
 | |
| const HtmlWebpackPlugin = require('html-webpack-plugin')
 | |
| const baseConfig = require('../../build/webpack.base.conf')
 | |
| const utils = require('../../build/utils')
 | |
| const webpack = require('webpack')
 | |
| // var projectRoot = path.resolve(__dirname, '../../')
 | |
| 
 | |
| const webpackConfig = merge(baseConfig, {
 | |
|   // use inline sourcemap for karma-sourcemap-loader
 | |
|   module: {
 | |
|     rules: utils.styleLoaders()
 | |
|   },
 | |
|   devtool: 'inline-source-map',
 | |
|   plugins: [
 | |
|     new webpack.DefinePlugin({
 | |
|       'process.env': require('../../config/test.env')
 | |
|     }),
 | |
|     new HtmlWebpackPlugin({
 | |
|       filename: 'index.html',
 | |
|       template: 'index.html',
 | |
|       inject: true
 | |
|     })
 | |
|   ]
 | |
| })
 | |
| 
 | |
| // no need for app entry during tests
 | |
| delete webpackConfig.entry
 | |
| 
 | |
| module.exports = function (config) {
 | |
|   config.set({
 | |
|     // to run in additional browsers:
 | |
|     // 1. install corresponding karma launcher
 | |
|     //    http://karma-runner.github.io/0.13/config/browsers.html
 | |
|     // 2. add it to the `browsers` array below.
 | |
|     browsers: ['FirefoxHeadless'],
 | |
|     frameworks: ['mocha', 'sinon-chai'],
 | |
|     reporters: ['mocha'],
 | |
|     customLaunchers: {
 | |
|       FirefoxHeadless: {
 | |
|         base: 'Firefox',
 | |
|         flags: [
 | |
|           '-headless'
 | |
|         ]
 | |
|       }
 | |
|     },
 | |
|     files: [
 | |
|       './index.js'
 | |
|     ],
 | |
|     preprocessors: {
 | |
|       './index.js': ['webpack', 'sourcemap']
 | |
|     },
 | |
|     webpack: webpackConfig,
 | |
|     webpackMiddleware: {
 | |
|       noInfo: true
 | |
|     },
 | |
|     mochaReporter: {
 | |
|       showDiff: true
 | |
|     },
 | |
|     coverageReporter: {
 | |
|       dir: './coverage',
 | |
|       reporters: [
 | |
|         { type: 'lcov', subdir: '.' },
 | |
|         { type: 'text-summary' }
 | |
|       ]
 | |
|     }
 | |
|   })
 | |
| }
 | 
