module.exports = { // Use a big timeout for CI. testTimeout: 20_000, maxWorkers: 8, projects: [ { displayName: "test", roots: [""], setupFiles: ["./jest.polyfills.js"], setupFilesAfterEnv: ["./jest.setup.ts"], extensionsToTreatAsEsm: [".ts"], transform: { "^.+\\.(t|j)sx?$": [ "@swc/jest", { jsc: { transform: { react: { runtime: "automatic", importSource: "@emotion/react", }, }, experimental: { plugins: [["jest_workaround", {}]], }, }, }, ], }, testEnvironment: "jsdom", testEnvironmentOptions: { customExportConditions: [""], }, testRegex: "(/__tests__/.*|(\\.|/)(test|spec))\\.tsx?$", testPathIgnorePatterns: [ "/node_modules/", "/e2e/", // TODO: This test is timing out after upgrade a few Jest dependencies // and I was not able to figure out why. When running it specifically, I // can see many act warnings that may can help us to find the issue. "/usePaginatedQuery.test.ts", ], transformIgnorePatterns: [ "/node_modules/@chartjs-adapter-date-fns", ], moduleDirectories: ["node_modules", "/src"], moduleNameMapper: { "\\.css$": "/src/testHelpers/styleMock.ts", "^@fontsource": "/src/testHelpers/styleMock.ts", }, }, { displayName: "lint", runner: "jest-runner-eslint", testMatch: [ "/**/*.js", "/**/*.ts", "/**/*.tsx", ], testPathIgnorePatterns: [ "/out/", "/_jest/", "jest.config.js", "jest-runner.*.js", ], }, ], collectCoverageFrom: [ // included files "/**/*.ts", "/**/*.tsx", // excluded files "!/**/*.stories.tsx", "!/_jest/**/*.*", "!/api.ts", "!/coverage/**/*.*", "!/e2e/**/*.*", "!/jest-runner.eslint.config.js", "!/jest.config.js", "!/out/**/*.*", "!/storybook-static/**/*.*", ], };