Spaces:
Paused
Paused
Download src/lib/server/hooks/error.spec.ts from Mike0021/chat-ui-agent-demo: direct link, hf CLI and curl.
- Browser
- Download file 1.28 kB
-
https://huggingface.co/spaces/Mike0021/chat-ui-agent-demo/resolve/main/src/lib/server/hooks/error.spec.ts
- Command line
-
hf download hf://spaces/Mike0021/chat-ui-agent-demo/src/lib/server/hooks/error.spec.ts
-
curl -L -o error.spec.ts https://huggingface.co/spaces/Mike0021/chat-ui-agent-demo/resolve/main/src/lib/server/hooks/error.spec.ts
1.28 kB
| import { beforeEach, describe, expect, it, vi } from "vitest"; | |
| const mocks = vi.hoisted(() => ({ | |
| error: vi.fn(), | |
| })); | |
| vi.mock("$lib/server/logger", () => ({ | |
| logger: { error: mocks.error }, | |
| })); | |
| import { handleServerError } from "./error"; | |
| describe("handleServerError", () => { | |
| beforeEach(() => mocks.error.mockReset()); | |
| it("logs a plain request summary without native Headers or credentials", async () => { | |
| const request = new Request("https://example.com/api/conversation/test", { | |
| method: "POST", | |
| headers: { | |
| authorization: "Bearer secret-never-log", | |
| cookie: "session=secret-never-log", | |
| }, | |
| }); | |
| const result = await handleServerError({ | |
| error: new Error("upstream failed"), | |
| event: { | |
| locals: {}, | |
| params: {}, | |
| request, | |
| route: { id: "/api/conversation/[id]" }, | |
| url: new URL(request.url), | |
| } as never, | |
| status: 500, | |
| message: "Internal Error", | |
| } as never); | |
| expect(result.message).toBe("An error occurred"); | |
| expect(mocks.error).toHaveBeenCalledOnce(); | |
| const logged = mocks.error.mock.calls[0]?.[0]; | |
| expect(logged.request).toEqual({ method: "POST", mode: "cors" }); | |
| expect(Object.getPrototypeOf(logged.request)).toBe(Object.prototype); | |
| expect(JSON.stringify(logged)).not.toContain("secret-never-log"); | |
| }); | |
| }); | |