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 = { setupFilesAfterEnv: ['/jest.setup.js'], testEnvironment: 'jest-environment-jsdom', moduleNameMapper: { '^@pages/(.*)$': '/pages/$1', '^@/(.*)$': '/src/$1', '^@app/(.*)$': '/src/app/$1', '^@assets/(.*)$': '/src/assets/$1', '^@components/(.*)$': '/src/components/$1', '^@config/(.*)$': '/src/config/$1', '^@contexts/(.*)$': '/src/contexts/$1', '^@interfaces/(.*)$': '/src/interfaces/$1', '^@libs/(.*)$': '/src/libs/$1', '^@providers/(.*)$': '/src/providers/$1', '^@utils/(.*)$': '/src/utils/$1', // Handle specific aliases if generic one causes issues, but trying generic first matching tsconfig // '^@(.*)$': '/src/$1', }, } // createJestConfig is exported this way to ensure that next/jest can load the Next.js config which is async module.exports = createJestConfig(customJestConfig)