diff --git a/apps/api/src/services/notificationService.js b/apps/api/src/services/notificationService.js index af13c04bfa..30030ca902 100644 --- a/apps/api/src/services/notificationService.js +++ b/apps/api/src/services/notificationService.js @@ -5,7 +5,7 @@ export async function listNotifications() { } export async function createNotification(payload) { - const notification = { id: `ntf_${Date.now()}`, read: false, ...payload }; + const notification = { id: `ntf_${Date.now()}`, read: false, ...payload, createdAt: new Date().toISOString() }; notifications.push(notification); return notification; } diff --git a/apps/api/src/tests/notificationService.test.js b/apps/api/src/tests/notificationService.test.js new file mode 100644 index 0000000000..010143328a --- /dev/null +++ b/apps/api/src/tests/notificationService.test.js @@ -0,0 +1,15 @@ +import test from "node:test"; +import assert from "node:assert/strict"; +import { createNotification } from "../services/notificationService.js"; + +test("createNotification adds a server-side createdAt timestamp", async () => { + const notification = await createNotification({ + userId: "usr_123", + title: "Proposal update", + body: "A freelancer sent a proposal.", + createdAt: "2000-01-01T00:00:00.000Z" + }); + + assert.match(notification.createdAt, /^\d{4}-\d{2}-\d{2}T/); + assert.notEqual(notification.createdAt, "2000-01-01T00:00:00.000Z"); +});