// Mock AsyncStorage jest.mock('@react-native-async-storage/async-storage', () => ({ __esModule: true, default: { getItem: jest.fn(), setItem: jest.fn(), removeItem: jest.fn(), clear: jest.fn(), getAllKeys: jest.fn(() => Promise.resolve([])), multiGet: jest.fn(() => Promise.resolve([])), multiSet: jest.fn(() => Promise.resolve()), multiRemove: jest.fn(() => Promise.resolve()), }, })); // Mock expo-secure-store jest.mock('expo-secure-store', () => ({ getItemAsync: jest.fn(), setItemAsync: jest.fn(), deleteItemAsync: jest.fn(), })); // Mock expo-device jest.mock('expo-device', () => ({ deviceName: 'Test Device', modelName: 'Test Model', osName: 'iOS', osVersion: '15.0', })); // Mock expo-application jest.mock('expo-application', () => ({ nativeApplicationVersion: '1.0.0', nativeBuildVersion: '1', })); // Suppress console warnings during tests global.console = { ...console, warn: jest.fn(), error: jest.fn(), };