-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathwallaby.js
90 lines (81 loc) · 2.9 KB
/
wallaby.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
module.exports = function(wallaby) {
return {
files: [
'tsconfig.json',
'tsconfig.spec.json',
'jest.config.js',
'apps/**/*.+(ts|html|json|snap|css|less|sass|scss|jpg|jpeg|gif|png|svg)',
'!apps/**/*.spec.ts',
'!apps/**/*.stories.ts',
'!apps/**/main.ts',
'libs/**/*.+(ts|html|json|snap|css|less|sass|scss|jpg|jpeg|gif|png|svg)',
'!libs/**/*.spec.ts',
'!libs/**/*.stories.ts',
'!libs/**/environment.*.ts',
'!libs/**/environment.ts',
'!apps/legacy-restyle/**/*.*',
],
tests: [
'./apps/**/*.spec.ts',
'./libs/**/*.spec.ts',
'!apps/pluto-e2e/**/*.spec.ts',
'!apps/product-stamp-e2e/**/*.spec.ts',
],
env: {
type: 'node',
runner: 'node',
params: {
runner: '--max-old-space-size=12288',
},
},
debug: true,
testFramework: 'jest',
compilers: {
'**/*.ts?(x)': wallaby.compilers.typeScript({
module: 'commonjs',
getCustomTransformers: () => {
return {
before: [
require('jest-preset-angular/InlineHtmlStripStylesTransformer').factory(
{ compilerModule: require('typescript') }
),
],
};
},
}),
'**/*.html': file => ({
code: require('ts-jest').process(file.content, file.path, {
globals: {
'ts-jest': {
stringifyContentPathRegex: '\\.html$',
},
},
}),
map: { version: 3, sources: [], names: [], mappings: [] },
ranges: [],
}),
},
preprocessors: {
'**/*.js': file =>
require('@babel/core').transform(file.content, {
sourceMap: true,
compact: false,
filename: file.path,
presets: [require('babel-preset-jest')],
}),
},
setup: function(wallaby) {
let jestConfig = require('./jest.config');
delete jestConfig.preset;
jestConfig = Object.assign(
require('jest-preset-angular/jest-preset'),
jestConfig
);
jestConfig.transformIgnorePatterns.push('instrumented.*.(jsx?|html)$');
jestConfig.rootDir = './';
jestConfig.setupFilesAfterEnv = ['./apps/pluto/src/test-setup.ts'];
jestConfig.transform = { '^.+\\.(ts)$': 'ts-jest' };
wallaby.testFramework.configure(jestConfig);
},
};
};