-
Notifications
You must be signed in to change notification settings - Fork 16
/
jest.config.js
39 lines (36 loc) · 1.33 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
const nextJest = require('next/jest');
const createJestConfig = nextJest({
// Provide the path to your Next.js app to load next.config.js and .env files in your test environment
dir: './'
});
// Add any custom config to be passed to Jest
const customJestConfig = {
testPathIgnorePatterns: [
'<rootDir>/node_modules/',
'<rootDir>/.next/',
'<rootDir>/__tests__/mocks/'
],
setupFilesAfterEnv: ['<rootDir>/jest.setup.js'],
moduleNameMapper: {
'^@components/(.*)$': '<rootDir>/components/$1',
'^@pages/(.*)$': '<rootDir>/pages/$1',
'^@utils(.*)$': '<rootDir>/utils/$1',
'^@hooks(.*)$': '<rootDir>/hooks/$1',
'^@lib(.*)$': '<rootDir>/lib/$1',
'^@styles(.*)$': '<rootDir>/styles/$1',
'^@contexts(.*)$': '<rootDir>/contexts/$1',
'^@middleware(.*)$': '<rootDir>/middleware/$1',
'^@graphql(.*)$': '<rootDir>/graphql/$1',
'^@asserts(.*)$': '<rootDir>/asserts/$1',
'^@settings(.*)$': '<rootDir>/settings/$1',
'^@ts-types(.*)$': '<rootDir>/ts-types/$1'
},
moduleDirectories: ['node_modules', '<rootDir>/'],
testEnvironment: 'jest-environment-jsdom',
preset: 'ts-jest',
transform: {
'^.+\\.(ts|tsx)?$': 'ts-jest'
}
};
// createJestConfig is exported this way to ensure that next/jest can load the Next.js config which is async
module.exports = createJestConfig(customJestConfig);