import * as fs from "node:fs/promises"; import { vi } from "vitest"; export function stubFetchResponse(response: Response) { vi.stubGlobal( "fetch", vi.fn(async () => response), ); } export function stubFetchTextResponse(text: string, init?: ResponseInit) { stubFetchResponse(new Response(text, { status: 200, ...init })); } export async function readFileUtf8AndCleanup(filePath: string): Promise { try { return await fs.readFile(filePath, "utf8"); } finally { await fs.unlink(filePath).catch(() => {}); } }