




















@@ -45,4 +45,45 @@ describe("shared/string-normalization", () => {
4545expect(normalizeAtHashSlug("###__Room Name__")).toBe("room-name");
4646expect(normalizeAtHashSlug("@@@___")).toBe("");
4747});
48+49+it.each([
50+["技术讨论组", "技术讨论组"],
51+[" AI 助手群 ", "ai-助手群"],
52+["友達グループ", "友達グループ"],
53+["개발자 모임", "개발자-모임"],
54+["Team 技术讨论", "team-技术讨论"],
55+["#OpenClaw中文群", "#openclaw中文群"],
56+["Команда разработки", "команда-разработки"],
57+["فريق التطوير", "فريق-التطوير"],
58+])("preserves Unicode letters in normalizeHyphenSlug: %s", (input, expected) => {
59+expect(normalizeHyphenSlug(input)).toBe(expected);
60+});
61+62+it.each([
63+["Cafe\u0301 Team", "café-team"],
64+["हिन्दी चर्चा", "हिन्दी-चर्चा"],
65+["ห้อง แช็ต", "ห้อง-แช็ต"],
66+])("preserves combining marks in normalizeHyphenSlug: %s", (input, expected) => {
67+expect(normalizeHyphenSlug(input)).toBe(expected);
68+});
69+70+it.each([
71+["#技术频道", "技术频道"],
72+["@中文群组", "中文群组"],
73+["#日本語チャンネル", "日本語チャンネル"],
74+["#한국어채널", "한국어채널"],
75+["#Команда разработки", "команда-разработки"],
76+["@فريق التطوير", "فريق-التطوير"],
77+["#OpenClaw中文群", "openclaw中文群"],
78+])("preserves Unicode letters in normalizeAtHashSlug: %s", (input, expected) => {
79+expect(normalizeAtHashSlug(input)).toBe(expected);
80+});
81+82+it.each([
83+["#Cafe\u0301_Team", "café-team"],
84+["@हिन्दी चर्चा", "हिन्दी-चर्चा"],
85+["#ห้อง แช็ต", "ห้อง-แช็ต"],
86+])("preserves combining marks in normalizeAtHashSlug: %s", (input, expected) => {
87+expect(normalizeAtHashSlug(input)).toBe(expected);
88+});
4889});
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。