Utilização

Handle requests in a screen test.

tsx
// Handle requests in a screen test.
import { Text, resource } from 'kuito';
import { assert, render, screen, test, type FetchHandler } from 'kuito/tests';

// A tiny fake server: answers by path, 404 for the rest.
const api: FetchHandler = (request) => {
  const path = new URL(request.url).pathname;

  if (path === '/me')
    return { headers: { 'Content-Type': 'application/json' }, body: '{"name":"Ana"}' };

  return { status: 404 };
};

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

    return ((await response.json()) as { name: string }).name;
  });

  return <Text>{`Hi, ${me.data.value ?? '…'}`}</Text>;
}

test('greets the signed-in user', async () => {
  await render(<Greeting />, { fetch: api });

  assert.ok(screen.getByText('Hi, Ana'));
});

Construtores

ts
(url: string, base?: string | URL): URL

Parâmetros

NomeTipoObrigatórioDescrição
urlstringSim—
basestring | URLNão—

Devolve

URL

Propriedades e métodos 17

NomeTipoObrigatórioDescrição
prototypesó de leituraURLSim—
canParse(url: string, base?: string) => booleanSim—
parse(url: string, base?: string) => URL | nullSim—
hrefstringSim—
originsó de leiturastringSim—
protocolstringSim—
usernamestringSim—
passwordstringSim—
hoststringSim—
hostnamestringSim—
portstringSim—
pathnamestringSim—
hashstringSim—
searchParamssó de leituraURLSearchParamsSim—
toString() => stringSim—
toJSON() => stringSim—
canParse — assinaturas de método

Assinaturas

ts
(url: string, base?: string): boolean

Parâmetros

NomeTipoObrigatórioDescrição
urlstringSim—
basestringNão—

Devolve

boolean

parse — assinaturas de método

Assinaturas

ts
(url: string, base?: string): URL | null

Parâmetros

NomeTipoObrigatórioDescrição
urlstringSim—
basestringNão—

Devolve

URL

toString — assinaturas de método

Assinaturas

ts
(): string

Parâmetros

Sem parâmetros.

Devolve

string

toJSON — assinaturas de método

Assinaturas

ts
(): string

Parâmetros

Sem parâmetros.

Devolve

string

Gerado a partir das declarações TypeScript públicas: assinaturas, props e predefinições vêm da fonte verificada, as descrições da sua JSDoc. Nenhuma predefinição é inventada.