75 lines
1.9 KiB
JavaScript
75 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
|
||
|
|
||
|
const webpack = require('webpack')
|
||
|
const webpackConfig = require('../webpack.config')
|
||
|
|
||
|
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: ['spec', 'coverage-istanbul'],
|
||
|
files: ['./index.js'],
|
||
|
preprocessors: {
|
||
|
'./index.js': ['webpack', 'sourcemap', 'coverage'],
|
||
|
},
|
||
|
webpack: {
|
||
|
module: {
|
||
|
rules: [
|
||
|
{
|
||
|
test: /\.vue$/,
|
||
|
loader: 'vue-loader',
|
||
|
options: {
|
||
|
loaders: {
|
||
|
js: 'babel-loader',
|
||
|
},
|
||
|
postLoaders: {
|
||
|
js: 'istanbul-instrumenter-loader?esModules=true',
|
||
|
},
|
||
|
},
|
||
|
},
|
||
|
{
|
||
|
test: /\.js$/,
|
||
|
loader: 'babel-loader', exclude: /node_modules/,
|
||
|
},
|
||
|
{
|
||
|
test: /\.(png|jpg|gif|svg)$/,
|
||
|
loader: 'file-loader',
|
||
|
options: {
|
||
|
name: '[name].[ext]?[hash]',
|
||
|
},
|
||
|
},
|
||
|
{
|
||
|
test: /\.less$/,
|
||
|
use: [
|
||
|
{ loader: 'style-loader' },
|
||
|
{
|
||
|
loader: 'css-loader',
|
||
|
options: { sourceMap: true },
|
||
|
},
|
||
|
{ loader: 'less-loader',
|
||
|
options: { sourceMap: true },
|
||
|
},
|
||
|
],
|
||
|
},
|
||
|
],
|
||
|
},
|
||
|
},
|
||
|
webpackMiddleware: {
|
||
|
noInfo: true,
|
||
|
},
|
||
|
coverageReporter: {
|
||
|
dir: './coverage',
|
||
|
reporters: [
|
||
|
{ type: 'text-summary' },
|
||
|
],
|
||
|
},
|
||
|
})
|
||
|
}
|