81 lines
		
	
	
	
		
			2.2 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			81 lines
		
	
	
	
		
			2.2 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')
 | |
| var merge = require('webpack-merge')
 | |
| var baseConfig = require('../../build/webpack.base.conf')
 | |
| var utils = require('../../build/utils')
 | |
| var webpack = require('webpack')
 | |
| var projectRoot = path.resolve(__dirname, '../../')
 | |
| 
 | |
| var webpackConfig = merge(baseConfig, {
 | |
|   // use inline sourcemap for karma-sourcemap-loader
 | |
|   module: {
 | |
|     loaders: utils.styleLoaders()
 | |
|   },
 | |
|   devtool: '#inline-source-map',
 | |
|   // vue: {
 | |
|   //   loaders: {
 | |
|   //     js: 'isparta'
 | |
|   //   }
 | |
|   // },
 | |
|   plugins: [
 | |
|     new webpack.DefinePlugin({
 | |
|       'process.env': require('../../config/test.env')
 | |
|     })
 | |
|   ]
 | |
| })
 | |
| 
 | |
| // no need for app entry during tests
 | |
| delete webpackConfig.entry
 | |
| 
 | |
| // make sure isparta loader is applied before eslint
 | |
| // webpackConfig.module.preLoaders = webpackConfig.module.preLoaders || []
 | |
| // webpackConfig.module.preLoaders.unshift({
 | |
| //   test: /\.js$/,
 | |
| //   loader: 'isparta',
 | |
| //   include: path.resolve(projectRoot, 'src')
 | |
| // })
 | |
| 
 | |
| // // only apply babel for test files when using isparta
 | |
| // webpackConfig.module.loaders.some(function (loader, i) {
 | |
| //   if (loader.loader === 'babel') {
 | |
| //     loader.include = path.resolve(projectRoot, 'test/unit')
 | |
| //     return true
 | |
| //   }
 | |
| // })
 | |
| 
 | |
| 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: ['PhantomJS'],
 | |
|     frameworks: ['mocha', 'sinon-chai'],
 | |
|     reporters: ['mocha'],
 | |
|     files: [
 | |
|       '../../node_modules/@babel/polyfill/dist/polyfill.js',
 | |
|       './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' }
 | |
|       ]
 | |
|     }
 | |
|   })
 | |
| }
 | 
