From 54345505d1b24b20bcf49264efd319c06bb546db Mon Sep 17 00:00:00 2001 From: Vincent Koc Date: Tue, 28 Jul 2026 09:56:47 +0200 Subject: [PATCH] test(i18n): prove iOS discovery catalog ownership --- test/scripts/apple-app-i18n.test.ts | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/test/scripts/apple-app-i18n.test.ts b/test/scripts/apple-app-i18n.test.ts index 1c35591cb68e..ef16a1d64ccb 100644 --- a/test/scripts/apple-app-i18n.test.ts +++ b/test/scripts/apple-app-i18n.test.ts @@ -68,6 +68,29 @@ describe("Apple app i18n catalogs", () => { expect(APPLE_I18N_LOCALES).toEqual(NATIVE_I18N_LOCALES); }); + it("derives shared discovery status coverage into the iOS catalog", async () => { + const inventory = JSON.parse(await readFile("apps/.i18n/native-source.json", "utf8")) as { + entries: Array<{ + id: string; + kind: string; + line: number; + path: string; + source: string; + surface: string; + }>; + version: number; + }; + const build = buildIosCatalog( + { sourceLanguage: "en", strings: {}, version: "1.0" }, + inventory, + [], + ); + + expect(Object.keys(build.catalog.strings ?? {})).toEqual( + expect.arrayContaining(["Searching…", "Stopped", "Waiting"]), + ); + }); + it("derives broad macOS catalog coverage from the native source inventory", async () => { const inventory = JSON.parse(await readFile("apps/.i18n/native-source.json", "utf8")) as { entries: Array<{