Files
rustfs-console/tests/lib/i18n-config.test.js
T
马登山 ed447f5bb0 fix: complete i18n configuration and translations
Normalize locale detection, sync document language direction, complete locale keys, and add i18n regression coverage.

Refs rustfs/rustfs#2735
2026-04-29 17:54:22 +08:00

28 lines
1.0 KiB
JavaScript

import test from "node:test"
import assert from "node:assert/strict"
import { DEFAULT_LOCALE, getLocaleFile, isRtlLocale, normalizeLocale } from "../../lib/i18n-config.js"
test("normalizeLocale accepts supported, browser, and legacy locale values", () => {
assert.equal(DEFAULT_LOCALE, "en")
assert.equal(normalizeLocale("en-US"), "en")
assert.equal(normalizeLocale("zh_CN"), "zh")
assert.equal(normalizeLocale("zhCN"), "zh")
assert.equal(normalizeLocale("pt-BR"), "pt")
assert.equal(normalizeLocale("pt_BR"), "pt")
assert.equal(normalizeLocale("ar-MA"), "ar")
assert.equal(normalizeLocale("unknown"), "en")
})
test("getLocaleFile resolves normalized locales to bundled locale files", () => {
assert.equal(getLocaleFile("en-US"), "en-US")
assert.equal(getLocaleFile("zh_CN"), "zh-CN")
assert.equal(getLocaleFile("pt-BR"), "pt-BR")
})
test("isRtlLocale detects right-to-left languages after normalization", () => {
assert.equal(isRtlLocale("ar-MA"), true)
assert.equal(isRtlLocale("ar"), true)
assert.equal(isRtlLocale("en-US"), false)
})