23 lines · 1.0 KB · TypeScript
RawDownload
import { describe, expect, it } from "vite-plus/test";import { Cookies, HttpClientRequest, HttpClientResponse } from "effect/unstable/http"; describe("React Native HTTP responses", () => {  it("can inspect a rejected response when native Headers has no getSetCookie", () => {    const response = new Response("Registration rejected", { status: 400 });    Object.defineProperty(response.headers, "getSetCookie", { value: undefined });    const result = HttpClientResponse.fromWeb(      HttpClientRequest.post("https://relay.example.test/v1/mobile/devices"),      response,    );    expect(result.cookies).toEqual(Cookies.empty);    expect(result.status).toBe(400);  });   it("preserves cookies on platforms that expose Set-Cookie headers", () => {    const result = HttpClientResponse.fromWeb(      HttpClientRequest.get("https://relay.example.test"),      new Response(null, { headers: { "Set-Cookie": "session=abc; HttpOnly" } }),    );    expect(result.cookies).toEqual(Cookies.fromSetCookie(["session=abc; HttpOnly"]));  });});