-
Notifications
You must be signed in to change notification settings - Fork 0
/
jest.config.ts
61 lines (49 loc) · 1.32 KB
/
jest.config.ts
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
export const APP_NAME = 'com.enonic.lib.explorer';
export const EXPLORER_VERSION = '4.4.3';
const DIR_SRC = 'src/main/resources';
const AND_BELOW = '**';
const SOURCE_FILES = `*.{ts,tsx}`;
const TEST_EXT = `{spec,test}.{ts,tsx}`;
const TEST_FILES = `*.${TEST_EXT}`;
export default {
collectCoverageFrom: [
`${DIR_SRC}/${AND_BELOW}/${SOURCE_FILES}`,
],
coveragePathIgnorePatterns: [
'/bin/',
'/node_modules/',
'/test/',
],
// In order for tests to work on all files, we have to use v8 coverage provider.
coverageProvider: 'v8', // Changes Uncovered Lines
globals: {
app: {
name: APP_NAME,
version: EXPLORER_VERSION
},
},
// It seems mocks doesn't apply to mapped modules?
moduleNameMapper: {
'@enonic/js-utils/(.*)': '<rootDir>/node_modules/@enonic/js-utils/$1',
'/lib/explorer/(.*)': '<rootDir>/src/main/resources/lib/explorer/$1'
},
preset: 'ts-jest/presets/js-with-babel-legacy',
// preset: 'ts-jest/presets/js-with-babel',
// testEnvironment: 'jsdom', // Clientside
testEnvironment: 'node',
testMatch: [
`<rootDir>/${DIR_SRC}/${AND_BELOW}/${TEST_FILES}`,
`<rootDir>/test/${AND_BELOW}/${TEST_FILES}`
],
transform: {
'^.+\\.(js|jsx|ts|tsx)$': [
'ts-jest',
{
tsconfig: 'test/tsconfig.json'
}
]
},
transformIgnorePatterns: [
'/node_modules/(?!@enonic/(js-utils|mock-xp))',
]
}