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 = { rootDir: '../', // Add more setup options before each test is run setupFilesAfterEnv: ['/.jest/jest.setup.js'], // if using TypeScript with a baseUrl set to the root directory then you need the below for alias' to work moduleDirectories: ['node_modules', '/src'], testEnvironment: 'jest-environment-jsdom', moduleNameMapper: { '^.+\\.(svg)$': '/.jest/__mocks__/svgrMock.tsx', // '^@/components/(.*)$': '/components/$1', '@shared(.*)$': '/src/components/@shared/$1', '@hooks/(.*)$': '/src/@hooks/$1', '@context/(.*)$': '/src/@context/$1', '@images/(.*)$': '/src/@images/$1', '@utils/(.*)$': '/src/@utils/$1', '@content/(.*)$': '/@content/$1' }, collectCoverage: true, collectCoverageFrom: [ 'src/**/*.{ts,tsx}', '!src/**/*.{stories,test}.{ts,tsx}', '!src/@types/**/*.{ts,tsx}' ], testPathIgnorePatterns: ['node_modules', '\\.cache', '.next', 'coverage'] } // createJestConfig is exported this way to ensure that next/jest can load the Next.js config which is async module.exports = createJestConfig(customJestConfig)