-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathjest.config.ts
40 lines (31 loc) · 1011 Bytes
/
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
/**
* For a detailed explanation regarding each configuration property, visit:
* https://jestjs.io/docs/configuration
*/
import nextJest from "next/jest.js";
import type { Config } from "jest";
const createJestConfig = nextJest({
dir: "./",
});
// Add any custom config to be passed to Jest
const config: Config = {
setupFilesAfterEnv: ["<rootDir>/jest.setup.ts"],
testEnvironment: "jsdom",
collectCoverage: true,
coverageProvider: "v8",
coveragePathIgnorePatterns: ["/node_modules/", "/.next/"],
coverageDirectory: "coverage",
transform: {
"^.+\\.tsx?$": "babel-jest",
},
moduleNameMapper: {
"^@/(.*)$": "<rootDir>/src/$1",
"^lodash-es$": "lodash",
},
// Handle JSON imports
transformIgnorePatterns: ["/node_modules/(?!lodash-es).+\\.js$"],
// Enable ES modules
extensionsToTreatAsEsm: [".ts", ".tsx"],
};
// createJestConfig is exported this way to ensure that next/jest can load the Next.js config which is async
export default createJestConfig(config);