Verwendung

Return a fake network response.

tsx
// Return a fake network response.
import { Text, resource } from 'kuito';
import { assert, render, screen, test, type FetchAnswer } from 'kuito/tests';

function Weather() {
  const forecast = resource(async () => {
    const response = await fetch('https://api.example.com/forecast');

    return response.ok ? 'Sunny' : `Unavailable (${response.status})`;
  });

  return <Text>{forecast.data.value ?? 'Loading'}</Text>;
}

const outage: FetchAnswer = { status: 503, body: 'Service unavailable' };

test('an outage shows as unavailable', async () => {
  await render(<Weather />, { fetch: () => outage });

  assert.ok(screen.getByText('Unavailable (503)'));
});

Typdeklaration

ts
export interface FetchAnswer {
  status?: number;
  headers?: Record<string, string>;
  body?: string | Uint8Array;
}

Mitglieder 3

NameTypErforderlichBeschreibung
statusnumberNein—
headersRecord<string, string>Nein—
bodystring | Uint8Array<ArrayBufferLike>Nein—
Generiert aus den öffentlichen TypeScript-Deklarationen: Signaturen, Props und Standardwerte stammen aus der geprüften Quelle, Beschreibungen aus deren JSDoc. Kein Standardwert ist erfunden.