forked from react-boilerplate/react-boilerplate-typescript
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathjest.config.js
45 lines (44 loc) · 1.38 KB
/
jest.config.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
const {pathsToModuleNameMapper} = require('ts-jest/utils')
const fs = require('fs')
const {parse} = require('comment-json')
const tsconfig = fs.readFileSync('tsconfig.json', 'utf8')
const {compilerOptions: {paths}} = parse(tsconfig, null, true)
module.exports = {
preset: 'ts-jest/presets/js-with-babel',
collectCoverageFrom: [
'app/**/*.{js,jsx,ts,tsx}',
'!app/**/*.test.{js,jsx,ts,tsx}',
'!app/*/RbGenerated*/*.{js,jsx,ts,tsx}',
'!app/app.tsx',
'!app/global-styles.ts',
'!app/*/*/Loadable.{js,jsx,ts,tsx}',
],
moduleFileExtensions: ['ts', 'tsx', 'js'],
globals: {
'ts-jest': {
tsConfig: 'tsconfig.json',
diagnostics: false,
},
},
moduleDirectories: ['node_modules', 'app'],
moduleNameMapper: {
'.*\\.(css|less|styl|scss|sass)$':
'<rootDir>/internals/mocks/cssModule.js',
'.*\\.(jpg|jpeg|png|gif|eot|otf|webp|svg|ttf|woff|woff2|mp4|webm|wav|mp3|m4a|aac|oga)$':
'<rootDir>/internals/mocks/image.js',
...pathsToModuleNameMapper(paths, {prefix: '<rootDir>/'}),
},
setupFilesAfterEnv: [
'<rootDir>/internals/testing/test-bundler.ts',
'@testing-library/jest-dom/extend-expect',
],
testRegex: 'tests/.*\\.(test|spec)\\.(js|ts(x?))$',
transform: {
'^.+\\.(ts(x?))$': 'ts-jest',
},
snapshotSerializers: [],
watchPlugins: [
'jest-watch-typeahead/filename',
'jest-watch-typeahead/testname',
],
};