Files
haptika/__tests__/App.test.tsx
2026-07-31 16:20:10 +02:00

53 lines
1.2 KiB
TypeScript

/**
* @format
*/
import React from 'react';
import ReactTestRenderer from 'react-test-renderer';
jest.mock('react-native-vision-camera', () => ({
Camera: () => null,
useCameraDevice: () => undefined,
useCameraPermission: () => ({
hasPermission: true,
requestPermission: jest.fn(async () => true),
}),
useFrameOutput: () => ({}),
}));
jest.mock('react-native-worklets', () => ({
scheduleOnRN: jest.fn(),
}));
jest.mock('react-native-haptika-ppg', () => ({
haptikaPPG: {
startMeasurement: jest.fn(),
processFrame: jest.fn(),
finishMeasurement: jest.fn(),
cancelMeasurement: jest.fn(),
getThermalState: jest.fn(() => 'nominal'),
},
haptikaHealthKit: {
isAvailable: jest.fn(() => false),
requestReadAuthorization: jest.fn(async () => false),
fetchContext: jest.fn(),
fetchLatestHeartbeatSeries: jest.fn(),
},
}));
jest.mock('@react-native-async-storage/async-storage', () => ({
__esModule: true,
default: {
getItem: jest.fn(async () => null),
setItem: jest.fn(async () => undefined),
},
}));
import App from '../App';
test('renders correctly', async () => {
await ReactTestRenderer.act(() => {
ReactTestRenderer.create(<App />);
});
});