diff --git a/src/admin/routes/submissions/[form]/index.tsx b/src/admin/routes/submissions/[form]/index.tsx index c442791..b04aef6 100644 --- a/src/admin/routes/submissions/[form]/index.tsx +++ b/src/admin/routes/submissions/[form]/index.tsx @@ -31,10 +31,10 @@ export default function SubmissionsFormRoute( - {(data.items as Array<{ id: string; createdAt: number; status: string }>).map((s) => ( + {(data.items as Array<{ id: string; receivedAt: number; status: string }>).map((s) => ( - + diff --git a/tests/admin/submissions_list_test.tsx b/tests/admin/submissions_list_test.tsx new file mode 100644 index 0000000..743bdae --- /dev/null +++ b/tests/admin/submissions_list_test.tsx @@ -0,0 +1,27 @@ +/** @jsxImportSource preact */ +/** + * Regression test: the per-form submissions list must render the submission + * timestamp from `receivedAt` (Unix ms, the field on the Submission + * interface). It previously read `s.createdAt`, which does not exist, so + * every row showed "Invalid Date". + */ + +import { assertEquals, assertStringIncludes } from "https://deno.land/std@0.224.0/assert/mod.ts"; +import { render } from "preact-render-to-string"; +import SubmissionsFormRoute from "../../src/admin/routes/submissions/[form]/index.tsx"; + +Deno.test("submissions list: renders a valid date from receivedAt (not 'Invalid Date')", () => { + const receivedAt = 1788249949694; + const html = render( + , + ); + + assertEquals(html.includes("Invalid Date"), false); + assertStringIncludes(html, new Date(receivedAt).toLocaleString()); +});
IDSubmittedStatus
{s.id}{new Date(s.createdAt).toLocaleString()}{new Date(s.receivedAt).toLocaleString()} {s.status} View