34 lines
1.0 KiB
TypeScript
34 lines
1.0 KiB
TypeScript
|
|
import { describe, expect, it } from "vitest";
|
||
|
|
import {
|
||
|
|
resourceLanguageLabel,
|
||
|
|
resourceTypeDisplay,
|
||
|
|
resourceTypeLabel,
|
||
|
|
typeFilterLabel,
|
||
|
|
} from "./resourceTypeLabels";
|
||
|
|
|
||
|
|
const t = (key: string) =>
|
||
|
|
({
|
||
|
|
filterAll: "全部",
|
||
|
|
type_image: "圖片",
|
||
|
|
type_video: "影片",
|
||
|
|
lang_zh_TW: "繁中",
|
||
|
|
lang_zh_CN: "簡中",
|
||
|
|
lang_en: "英文",
|
||
|
|
})[key] ?? key;
|
||
|
|
|
||
|
|
describe("resource labels", () => {
|
||
|
|
it("localizes known resource types and falls back to raw type", () => {
|
||
|
|
expect(typeFilterLabel(t, "all")).toBe("全部");
|
||
|
|
expect(resourceTypeLabel(t, "image")).toBe("圖片");
|
||
|
|
expect(resourceTypeDisplay(t, "video")).toBe("影片");
|
||
|
|
expect(resourceTypeLabel(t, "unknown")).toBe("unknown");
|
||
|
|
});
|
||
|
|
|
||
|
|
it("normalizes resource language codes", () => {
|
||
|
|
expect(resourceLanguageLabel(t, "zh-TW")).toBe("繁中");
|
||
|
|
expect(resourceLanguageLabel(t, "zh-hans")).toBe("簡中");
|
||
|
|
expect(resourceLanguageLabel(t, "EN")).toBe("英文");
|
||
|
|
expect(resourceLanguageLabel(t, "ja")).toBe("ja");
|
||
|
|
});
|
||
|
|
});
|