UNPKG

@kontent-ai/core-sdk

Version:

Core package with shared / common functionality for Kontent.ai SDKs

42 lines 1.47 kB
import { vi } from "vitest"; import { isNotUndefined } from "../utils/core.utils.js"; import { toFetchHeaders } from "../utils/header.utils.js"; export function getFetchJsonMock({ json, status, responseHeaders, }) { return getFetchMock({ status, responseHeaders: responseHeaders ?? [], blob: undefined, json, }); } export function getFetchBlobMock({ blob, status, responseHeaders, }) { return getFetchMock({ blob, status, responseHeaders: responseHeaders ?? [], json: undefined, }); } export function getFakeBlob() { return new Blob(["x"], { type: "text/plain" }); } function getFetchMock({ json, blob, status, responseHeaders, }) { return vi.fn(() => { const contentTypeHeader = responseHeaders.find((m) => m.name.toLowerCase() === "Content-Type".toLowerCase()) ? undefined : { name: "Content-Type", value: "application/json", }; return Promise.resolve({ // only implement the methods we need, ignore the rest ...{}, ok: status === 200, headers: toFetchHeaders([...responseHeaders, contentTypeHeader].filter(isNotUndefined)), status, json: async () => await Promise.resolve(json), ...(blob ? { blob: async () => await Promise.resolve(blob) } : {}), }); }); } //# sourceMappingURL=test.utils.js.map