import nextJest from 'next/jest.js'; 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 /** @type {import('jest').Config} */ const config = { // Add more setup options before each test is run setupFilesAfterEnv: ['/jest.setup.js'], testEnvironment: 'jest-environment-jsdom', preset: 'ts-jest', moduleNameMapper: { // Handle module aliases (if you're using them in your Next.js project) '^@/(.*)$': '/src/$1' }, // Test files can be next to components with .test.tsx or .spec.tsx extensions testMatch: ['**/__tests__/**/*.[jt]s?(x)', '**/?(*.)+(spec|test).[jt]s?(x)'] }; // createJestConfig is exported this way to ensure that next/jest can load the Next.js config which is async export default createJestConfig(config);