diff --git a/apps/server/src/services/i18n.spec.ts b/apps/server/src/services/i18n.spec.ts index c57537d138..e9be7efc81 100644 --- a/apps/server/src/services/i18n.spec.ts +++ b/apps/server/src/services/i18n.spec.ts @@ -1,6 +1,8 @@ import { LOCALES } from "@triliumnext/commons"; import { readFileSync } from "fs"; import { join } from "path"; +// eslint-disable-next-line @typescript-eslint/no-require-imports +const { languages } = require("tesseract.js"); import { describe, expect, it } from "vitest"; describe("i18n", () => { @@ -16,4 +18,17 @@ describe("i18n", () => { .not.toThrow(); } }); + + it("all tesseractCode values are supported by Tesseract.js", () => { + const supportedCodes = new Set(Object.keys(languages).map((k) => k.toLowerCase())); + + for (const locale of LOCALES) { + if (!locale.tesseractCode) { + continue; + } + + expect(supportedCodes, `Locale '${locale.id}' has unsupported tesseractCode '${locale.tesseractCode}'`) + .toContain(locale.tesseractCode); + } + }); });