diff --git a/src/app/(site)/me/DashboardTasks.test.tsx b/src/app/(site)/me/DashboardTasks.test.tsx index 01e7bbda..61de5967 100644 --- a/src/app/(site)/me/DashboardTasks.test.tsx +++ b/src/app/(site)/me/DashboardTasks.test.tsx @@ -87,7 +87,7 @@ describe("dashboard task presentation", () => { mkdirSync(output, { recursive: true }); writeFileSync( join(output, "tasks.html"), - `
${html}
Premio inviti
`, + `
${html}
Premio inviti
`, ); } }); diff --git a/src/i18n/housekeeping-messages.test.ts b/src/i18n/housekeeping-messages.test.ts index 2999be77..f720cf87 100644 --- a/src/i18n/housekeeping-messages.test.ts +++ b/src/i18n/housekeeping-messages.test.ts @@ -5,6 +5,17 @@ import { visibleAdminNavigation } from "@/lib/admin-navigation"; import en from "@/messages/en.json"; import itMessages from "@/messages/it.json"; +function leafKeys(messages: Record, prefix = ""): string[] { + return Object.entries(messages).flatMap(([key, value]) => { + const path = prefix ? `${prefix}.${key}` : key; + return typeof value === "string" + ? [path] + : value && typeof value === "object" + ? leafKeys(value as Record, path) + : []; + }); +} + it.each([ ["en", en], ["it", itMessages], @@ -34,7 +45,7 @@ it.each([ ]); for (const key of keys) translate(`pages.admin.nav.${key}`); for (const area of ["actions", "table", "cmsErrors", "workQueue"] as const) - for (const key of Object.keys(en.pages.admin[area])) + for (const key of leafKeys(en.pages.admin[area])) translate(`pages.admin.${area}.${key}`, { count: 2, action: "Save",