WellNuo/jest.config.js
Sergei b5014fa680 Add role-based access verification documentation
- Comprehensive verification report with permission matrix
- Implementation summary with code examples
- All role permissions verified and working correctly
- Security properties documented (least privilege, fallbacks)
- API integration verified
- Type safety confirmed
- Update jest.config.js transformIgnorePatterns for better Expo compatibility

Permission Matrix:
- Custodian: full access (6 permissions)
- Guardian: full except remove (5 permissions)
- Caretaker: view-only (3 permissions)

Key files verified:
- components/ui/BeneficiaryMenu.tsx - permission enforcement
- app/(tabs)/beneficiaries/[id]/share.tsx - role management UI
- services/api.ts - backend integration
- __tests__/components/BeneficiaryMenu.test.tsx - test coverage
2026-01-29 12:59:00 -08:00

21 lines
718 B
JavaScript

module.exports = {
preset: 'jest-expo',
testEnvironment: 'node',
setupFilesAfterEnv: ['<rootDir>/jest.setup.js'],
transformIgnorePatterns: [
'node_modules/(?!(expo|expo-router|expo-font|expo-asset|expo-constants|expo-modules-core|@expo/.*|@expo-google-fonts/.*|@react-native|react-native|@react-navigation|react-navigation|@unimodules/.*|unimodules|sentry-expo|native-base|react-native-svg)/)',
],
moduleFileExtensions: ['ts', 'tsx', 'js', 'jsx'],
moduleNameMapper: {
'^@/(.*)$': '<rootDir>/$1',
},
collectCoverageFrom: [
'components/**/*.{ts,tsx}',
'app/**/*.{ts,tsx}',
'services/**/*.{ts,tsx}',
'contexts/**/*.{ts,tsx}',
'!**/*.d.ts',
'!**/node_modules/**',
],
};