diff --git a/src/routes/api/image.spec.ts b/src/routes/api/image.spec.ts
new file mode 100644
index 000000000..b6afdf580
--- /dev/null
+++ b/src/routes/api/image.spec.ts
@@ -0,0 +1,32 @@
+import { describe, expect, it } from "vitest";
+import { note } from "../../../spec/support/becca_mocking.js";
+import { renderSvgAttachment } from "./image.js";
+
+describe("Image API", () => {
+ it("renders empty SVG properly", () => {
+ const parentNote = note("note").note;
+ const response = new MockResponse();
+ renderSvgAttachment(parentNote, response as any, "attachment");
+ expect(response.headers["Content-Type"]).toBe("image/svg+xml");
+ expect(response.body).toBe(``);
+ });
+});
+
+class MockResponse {
+
+ body?: string;
+ headers: Record;
+
+ constructor() {
+ this.headers = {};
+ }
+
+ set(name: string, value: string) {
+ this.headers[name] = value;
+ }
+
+ send(body: string) {
+ this.body = body;
+ }
+
+}
diff --git a/src/routes/api/image.ts b/src/routes/api/image.ts
index d2f2b5632..aa24e7aae 100644
--- a/src/routes/api/image.ts
+++ b/src/routes/api/image.ts
@@ -41,8 +41,8 @@ function returnImageInt(image: BNote | BRevision | null, res: Response) {
}
}
-function renderSvgAttachment(image: BNote | BRevision, res: Response, attachmentName: string) {
- let svg: string | Buffer = "";
+export function renderSvgAttachment(image: BNote | BRevision, res: Response, attachmentName: string) {
+ let svg: string | Buffer = ``;
const attachment = image.getAttachmentByTitle(attachmentName);
if (attachment) {