123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081 |
- // 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' }
- ]
- }
- })
- }
|