From 5cefebd3524ce9bdcf1656dec4815cb5ea0abe7b Mon Sep 17 00:00:00 2001 From: Shakker Date: Tue, 12 May 2026 18:16:54 +0100 Subject: [PATCH] test: trace stored attachment previews --- ui/src/ui/controllers/chat.test.ts | 23 ++++++++++++++++++++--- 1 file changed, 20 insertions(+), 3 deletions(-) diff --git a/ui/src/ui/controllers/chat.test.ts b/ui/src/ui/controllers/chat.test.ts index 2e168b3d865..ffa7d1e3a32 100644 --- a/ui/src/ui/controllers/chat.test.ts +++ b/ui/src/ui/controllers/chat.test.ts @@ -954,6 +954,8 @@ describe("sendChatMessage", () => { dataUrl: `data:application/pdf;base64,${Buffer.from(pdfBytes).toString("base64")}`, file, }); + const previewUrl = attachment.previewUrl; + expect(previewUrl).toMatch(/^blob:nodedata:/u); const result = await sendChatMessage(state, "summarize", [attachment]); @@ -968,9 +970,24 @@ describe("sendChatMessage", () => { const attachmentRecord = requireRecord(attachmentParam); expect(attachmentRecord.type).toBe("file"); expect(attachmentRecord.content).toBe(Buffer.from(pdfBytes).toString("base64")); - expect(JSON.stringify(state.chatMessages)).not.toContain( - Buffer.from(pdfBytes).toString("base64"), - ); + expect(state.chatMessages).toStrictEqual([ + { + role: "user", + content: [ + { type: "text", text: "summarize" }, + { + type: "attachment", + attachment: { + url: previewUrl, + kind: "document", + label: "brief.pdf", + mimeType: "application/pdf", + }, + }, + ], + timestamp: expect.any(Number), + }, + ]); }); it("formats structured non-auth connect failures for chat send", async () => {