diff --git a/apps/api/src/services/proposalService.js b/apps/api/src/services/proposalService.js index 86b9e68003..5d5b229a08 100644 --- a/apps/api/src/services/proposalService.js +++ b/apps/api/src/services/proposalService.js @@ -5,7 +5,7 @@ export async function listProposals() { } export async function createProposal(payload) { - const proposal = { id: `prp_${Date.now()}`, ...payload }; + const proposal = { id: `prp_${Date.now()}`, ...payload, createdAt: new Date().toISOString() }; proposals.push(proposal); return proposal; } diff --git a/apps/api/src/tests/proposalService.test.js b/apps/api/src/tests/proposalService.test.js new file mode 100644 index 0000000000..3d0815a150 --- /dev/null +++ b/apps/api/src/tests/proposalService.test.js @@ -0,0 +1,15 @@ +import test from "node:test"; +import assert from "node:assert/strict"; +import { createProposal } from "../services/proposalService.js"; + +test("createProposal adds a server-side createdAt timestamp", async () => { + const proposal = await createProposal({ + coverLetter: "I can deliver this project.", + bidAmount: 300, + estDuration: "1 week", + createdAt: "2000-01-01T00:00:00.000Z" + }); + + assert.match(proposal.createdAt, /^\d{4}-\d{2}-\d{2}T/); + assert.notEqual(proposal.createdAt, "2000-01-01T00:00:00.000Z"); +});