/** * Jest configuration for MotoVaultPro frontend (React + TS, ESM) */ import type { Config } from 'jest'; const tsJestTransformCfg = { tsconfig: 'tsconfig.json', useESM: true, }; const config: Config = { testEnvironment: 'jsdom', roots: ['/src'], extensionsToTreatAsEsm: ['.ts', '.tsx'], transform: { '^.+\\.(ts|tsx)$': ['ts-jest', tsJestTransformCfg], }, moduleNameMapper: { '^@/(.*)$': '/src/$1', '\\.(css|less|scss|sass)$': '/test/__mocks__/styleMock.js', '\\.(svg|png|jpg|jpeg|gif)$': '/test/__mocks__/fileMock.js', }, setupFilesAfterEnv: ['/setupTests.ts'], testMatch: ['**/*.test.ts', '**/*.test.tsx'], moduleFileExtensions: ['ts', 'tsx', 'js', 'jsx', 'json', 'node'], testPathIgnorePatterns: ['/node_modules/', '/dist/'], reporters: [ 'default', [ 'tdd-guard-jest', { projectRoot: '/home/egullickson/motovaultpro', }, ], ], }; export default config;