Files
openclaw/src/media/outbound-attachment.test.ts
2026-04-21 14:19:27 +05:30

40 lines
1.0 KiB
TypeScript

import { describe, expect, it, vi } from "vitest";
const loadWebMedia = vi.hoisted(() => vi.fn());
const saveMediaBuffer = vi.hoisted(() => vi.fn());
vi.mock("./web-media.js", () => ({
loadWebMedia,
}));
vi.mock("./store.js", () => ({
saveMediaBuffer,
}));
const { resolveOutboundAttachmentFromUrl } = await import("./outbound-attachment.js");
describe("resolveOutboundAttachmentFromUrl", () => {
it("preserves the loaded file name when staging outbound media", async () => {
const buffer = Buffer.from("pdf");
loadWebMedia.mockResolvedValueOnce({
buffer,
contentType: "application/pdf",
fileName: "report.pdf",
});
saveMediaBuffer.mockResolvedValueOnce({
path: "/tmp/media/outbound/report---uuid.pdf",
contentType: "application/pdf",
});
await resolveOutboundAttachmentFromUrl("./report.pdf", 1024);
expect(saveMediaBuffer).toHaveBeenCalledWith(
buffer,
"application/pdf",
"outbound",
1024,
"report.pdf",
);
});
});