import { Config } from 'jest'; | |
const config: Config = { | |
preset: 'ts-jest', | |
testEnvironment: 'jsdom', | |
setupFilesAfterEnv: ['<rootDir>/tests/setup.ts'], | |
moduleNameMapper: { | |
'^@/(.*)$': '<rootDir>/src/$1', | |
}, | |
testMatch: [ | |
'<rootDir>/tests/**/*.test.ts', | |
'<rootDir>/tests/**/*.test.tsx', | |
], | |
collectCoverageFrom: [ | |
'src/**/*.{ts,tsx}', | |
'!src/**/*.d.ts', | |
'!src/**/*.test.{ts,tsx}', | |
], | |
coverageDirectory: 'coverage', | |
coverageReporters: ['text', 'lcov', 'html'], | |
coverageThreshold: { | |
global: { | |
branches: 80, | |
functions: 80, | |
lines: 80, | |
statements: 80, | |
}, | |
}, | |
transform: { | |
'^.+\\.(ts|tsx)$': 'ts-jest', | |
}, | |
moduleFileExtensions: ['ts', 'tsx', 'js', 'jsx', 'json'], | |
globals: { | |
'ts-jest': { | |
tsconfig: 'tsconfig.json', | |
}, | |
}, | |
}; | |
export default config; |