test(chat): enforce locked image URL masking

This commit is contained in:
Codex
2026-07-27 14:42:34 +08:00
parent fe9d31146b
commit ac36837add
6 changed files with 34 additions and 49 deletions
@@ -10,7 +10,7 @@
"timestamp": 1782180725000,
"image": {
"type": "elio_schedule",
"url": "https://cdn.cozsweet.com/mock/chat/elio-schedule-locked.jpg"
"url": null
},
"lockDetail": {
"locked": true,
@@ -185,12 +185,12 @@ describe("sendResponseToUiMessage", () => {
expect(message.privateMessageHint).toBeUndefined();
});
it("keeps paywalled image messages visible but locked", () => {
it("keeps image messages locked without retaining the protected URL", () => {
const message = sendResponseToUiMessage(
makeResponse({
image: {
type: "jpg",
url: "https://example.com/private-photo.jpg",
url: null,
},
lockDetail: {
locked: true,
@@ -199,9 +199,9 @@ describe("sendResponseToUiMessage", () => {
}),
);
expect(message.content).toBe("");
expect(message.imageUrl).toBe("https://example.com/private-photo.jpg");
expect(message.imagePaywalled).toBe(true);
expect(message.content).toBe("AI reply");
expect(message.imageUrl).toBeUndefined();
expect(message.imagePaywalled).toBeUndefined();
expect(message.locked).toBe(true);
expect(message.lockReason).toBe("image");
expect(message.lockedPrivate).toBeUndefined();