Skip to content

Instantly share code, notes, and snippets.

Created August 18, 2017 02:30
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save anonymous/fe035171c13484e671cb4ce8ad5b0f2a to your computer and use it in GitHub Desktop.
Save anonymous/fe035171c13484e671cb4ce8ad5b0f2a to your computer and use it in GitHub Desktop.
console.log('app');
import Vue from 'vue';
import Demo from '../src/views/Demo.vue';
describe('Demo.vue', () => {
let vm = null;
before(() => {
const Ctor = Vue.extend(Demo);
vm = new Ctor().$mount();
});
it('methods: foo()', () => {
expect(vm.foo()).to.equal(42);
});
});
<template>
<div>
Hello World!
</div>
</template>
<script>
export default {
name: 'demo',
methods: {
foo() {
return 42;
},
},
};
</script>
module.exports = (config) => {
config.set({
singleRun: true,
frameworks: ['mocha', 'chai'],
browsers: ['Chrome'],
files: [
'test/test.js',
],
preprocessors: {
'test/test.js': ['webpack', 'sourcemap'],
},
reporters: ['spec', 'coverage-istanbul'],
coverageIstanbulReporter: {
reports: ['html'],
dir: './coverage',
fixWebpackSourcePaths: true,
},
webpackMiddleware: { noInfo: true },
webpack: {
devtool: '#inline-source-map',
module: {
loaders: [
{
test: /\.js$/,
loader: 'istanbul-instrumenter-loader',
exclude: /node_modules/,
include: /src/,
enforce: 'post',
options: {
esModules: true,
},
},
{
test: /\.vue$/,
loader: 'vue-loader',
options: {
preLoaders: {
js: 'istanbul-instrumenter-loader?esModules=true',
},
},
},
],
},
},
});
};
{
"name": "repro-vue-loader-895-issue",
"version": "0.0.1",
"scripts": {
"test": "karma start"
},
"dependencies": {
"vue": "^2.3.4"
},
"devDependencies": {
"chai": "^4.1.0",
"css-loader": "^0.28.4",
"istanbul-instrumenter-loader": "^3.0.0",
"karma": "^1.7.0",
"karma-chai": "^0.1.0",
"karma-chrome-launcher": "^2.2.0",
"karma-coverage-istanbul-reporter": "^1.3.0",
"karma-mocha": "^1.3.0",
"karma-sourcemap-loader": "^0.3.7",
"karma-spec-reporter": "0.0.31",
"karma-webpack": "^2.0.4",
"mocha": "^3.4.2",
"vue-loader": "13.0.3",
"vue-template-compiler": "^2.3.4",
"webpack": "^3.2.0"
}
}
const testsContext = require.context('./', true, /\.spec\.js$/);
testsContext.keys().forEach(testsContext);
const srcContext = require.context('../src', true);
srcContext.keys().forEach(srcContext);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment