UNPKG

2.27 kBJavaScriptView Raw
1var wallabyWebpack = require('wallaby-webpack');
2
3var electronParams = {};
4if(process.env.DISABLE_GPU){
5 /* if you are having issues with your GPU such as https://github.com/wallabyjs/public/issues/1076
6 * then simply defined an environment variable in the trouble environment DISABLE_GPU=true and electron will use
7 * chrome environment with the GPU disabled
8 */
9 electronParams.runner = '--disable-gpu';
10}
11
12var webpackPostprocessor = wallabyWebpack({
13 entryPatterns: [
14 'src/wallabyTest.js',
15 'src/**/*spec.js'
16 ],
17
18 module: {
19 loaders: [
20 {test: /\.css$/, loader: 'raw-loader'},
21 {test: /\.html$/, loader: 'raw-loader'},
22 {test: /\.js$/, loader: 'angular2-template-loader', exclude: /node_modules/},
23 {test: /\.json$/, loader: 'json-loader'},
24 {test: /\.styl$/, loaders: ['raw-loader', 'stylus-loader']},
25 {test: /\.less$/, loaders: ['raw-loader', 'less-loader']},
26 {test: /\.scss$|\.sass$/, loaders: ['raw-loader', 'sass-loader']},
27 {test: /\.(jpg|png)$/, loader: 'url-loader?limit=128000'}
28 ]
29 }
30});
31
32var compilerOptions = require('./src/tsconfig.spec.json').compilerOptions;
33
34module.exports = function (wallaby) {
35
36 return {
37 files: [
38 { pattern: 'node_modules/sinon/pkg/sinon.js', instrument: false },
39 { pattern: 'node_modules/chai/chai.js', instrument: false },
40 { pattern: 'node_modules/sinon-chai/lib/sinon-chai.js', instrument: false },
41 { pattern: 'src/**/*.ts', load: false },
42 { pattern: 'src/**/*.d.ts', ignore: true },
43 { pattern: 'src/**/*.css', load: false },
44 { pattern: 'src/**/*.less', load: false },
45 { pattern: 'src/**/*.scss', load: false },
46 { pattern: 'src/**/*.sass', load: false },
47 { pattern: 'src/**/*.html', load: false },
48 { pattern: 'src/**/*spec.ts', ignore: true }
49 ],
50
51 tests: [
52 {pattern: 'src/**/*spec.ts', load: false}
53 ],
54
55 testFramework: 'mocha',
56
57 compilers: {
58 '**/*.ts': wallaby.compilers.typeScript(compilerOptions)
59 },
60
61 env: {
62 kind: 'electron',
63 params: electronParams
64 },
65
66 postprocessor: webpackPostprocessor,
67
68 setup: function () {
69 window.expect = chai.expect;
70 window.__moduleBundler.loadTests();
71 },
72
73 debug: true
74 };
75};