1jest.mock('react-native/Libraries/Components/AccessibilityInfo/AccessibilityInfo', () => { 2 const MockA11y = { 3 addEventListener: jest.fn(), 4 announceForAccessibility: jest.fn(), 5 fetch: jest.fn(), 6 isBoldTextEnabled: jest.fn().mockResolvedValue(false), 7 isGrayscaleEnabled: jest.fn().mockResolvedValue(false), 8 isInvertColorsEnabled: jest.fn().mockResolvedValue(false), 9 isReduceMotionEnabled: jest.fn().mockResolvedValue(false), 10 isReduceTransparencyEnabled: jest.fn().mockResolvedValue(false), 11 isScreenReaderEnabled: jest.fn(() => Promise.resolve(false)), 12 removeEventListener: jest.fn(), 13 setAccessibilityFocus: jest.fn(), 14 }; 15 16 // workaround to be compatible with modern `Accessibility` in RN 0.66 which has ESM export 17 // Use `return { default: MockAccessibility };` when we drop support for SDK 44 18 MockA11y.default = MockA11y; 19 20 return MockA11y; 21}); 22 23jest.mock('react-native/Libraries/Utilities/Appearance', () => { 24 const MockAppearance = { 25 addChangeListener: jest.fn().mockReturnValue({ remove: jest.fn() }), 26 removeChangeListener: jest.fn(), 27 getColorScheme: jest.fn(() => 'light'), 28 }; 29 30 // workaround to be compatible with modern `Appearance` in RN 0.66 which has ESM export 31 // Use `return { default: MockAppearance };` when we drop support for SDK 44 32 MockAppearance.default = MockAppearance; 33 34 return MockAppearance; 35}); 36