tests.ModuleFakes
Fakes for the native modules a test's app calls, by module name, so the app runs without a device.
Utilisation
Provide several native capabilities in a test.
// Provide several native capabilities in a test.
import { Text, appearance, network } from 'kuito';
import { assert, render, screen, test, type ModuleFakes } from 'kuito/tests';
const Status = () => (
<Text>{`${appearance.colorScheme.value} · ${network.state.value.isConnected ? 'online' : 'offline'}`}</Text>
);
// A dark, offline device: one fake per module, live values as their value.
const offlineAtNight: ModuleFakes = {
Appearance: { colorScheme: 'dark', fontScale: 1 },
Network: {
state: { type: 'none', isConnected: false, isInternetReachable: false, details: null },
},
};
test('the status bar reads dark and offline', async () => {
await render(<Status />, { modules: offlineAtNight });
assert.ok(screen.getByText('dark · offline'));
});Déclaration du type
export type ModuleFakes = Readonly<Record<string, ModuleFake>>;Type
{ readonly [x: string]: Readonly<Record<string, unknown>>;}Généré depuis les déclarations TypeScript publiques : signatures, props et valeurs par défaut viennent de la source vérifiée, les descriptions de sa JSDoc. Aucune valeur par défaut n'est inventée.