/** @type {import('jest').Config} */ module.exports = { preset: 'jest-expo', clearMocks: true, setupFiles: [ '/src/test/setupEnv.js', '../../node_modules/react-native-gesture-handler/jestSetup.js', ], setupFilesAfterEnv: [ '@testing-library/jest-native/extend-expect', '/src/test/setup.ts', ], moduleNameMapper: { '^@/(.*)$': '/src/$1', }, testMatch: [ '/src/**/__tests__/**/*.(spec|test).(ts|tsx)', '/src/**/*.(spec|test).(ts|tsx)', ], collectCoverageFrom: [ '/app/**/*.{ts,tsx}', '/src/**/*.{ts,tsx}', '!/src/**/__tests__/**', '!/src/test/**', '!/**/*.d.ts', ], coverageThreshold: { global: { statements: 23, branches: 17, functions: 21, lines: 23, }, }, transformIgnorePatterns: [ 'node_modules/(?!(jest-)?react-native|@react-native|@react-navigation|expo(nent)?|@expo(nent)?/.*|expo-router|react-native-reanimated|react-native-gesture-handler|react-native-safe-area-context|@sentry/react-native|@sentry/.*)', ], };