fitaiProto/apps/admin/jest.config.js

47 lines
1.1 KiB
JavaScript

const { pathsToModuleNameMapper } = require("ts-jest");
const { compilerOptions } = require("./tsconfig");
module.exports = {
preset: "ts-jest",
testEnvironment: "jsdom",
setupFilesAfterEnv: ["<rootDir>/jest.setup.js"],
moduleNameMapper: pathsToModuleNameMapper(compilerOptions.paths, {
prefix: "<rootDir>/",
}),
testMatch: ["**/__tests__/**/*.(ts|tsx|js)", "**/*.(test|spec).(ts|tsx|js)"],
transform: {
"^.+\\.(ts|tsx)$": "ts-jest",
},
// Coverage configuration
collectCoverageFrom: [
"src/**/*.{ts,tsx}",
"!src/**/__tests__/**",
"!src/**/*.test.{ts,tsx}",
"!src/**/*.spec.{ts,tsx}",
"!src/**/*.d.ts",
"!src/types/**",
],
coveragePathIgnorePatterns: [
"/node_modules/",
"/__tests__/",
"/dist/",
"/coverage/",
],
coverageReporters: ["text", "lcov", "html", "json-summary"],
coverageThreshold: {
global: {
branches: 70,
functions: 75,
lines: 75,
statements: 75,
},
// Higher thresholds for Phase 9 performance utilities
"./src/lib/performance/**/*.ts": {
branches: 85,
functions: 90,
lines: 90,
statements: 90,
},
},
};