2026-03-20 16:38:55 +00:00
|
|
|
import { describe, expect, it } from "vitest";
|
|
|
|
|
import { normalizeAgentMentionToken } from "../services/issues.ts";
|
|
|
|
|
|
|
|
|
|
describe("normalizeAgentMentionToken", () => {
|
|
|
|
|
it("strips hex numeric entities such as space ( )", () => {
|
|
|
|
|
expect(normalizeAgentMentionToken("Baba ")).toBe("Baba");
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
it("strips decimal numeric entities", () => {
|
|
|
|
|
expect(normalizeAgentMentionToken("Baba ")).toBe("Baba");
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
it("strips common named entities", () => {
|
|
|
|
|
expect(normalizeAgentMentionToken("Baba ")).toBe("Baba");
|
|
|
|
|
});
|
|
|
|
|
|
2026-03-24 09:40:55 +02:00
|
|
|
it("decodes named entities mid-token so agent names can include &", () => {
|
|
|
|
|
expect(normalizeAgentMentionToken("Ba&ba")).toBe("Ba&ba");
|
|
|
|
|
expect(normalizeAgentMentionToken("M&M")).toBe("M&M");
|
|
|
|
|
});
|
|
|
|
|
|
2026-03-20 16:38:55 +00:00
|
|
|
it("returns plain names unchanged", () => {
|
|
|
|
|
expect(normalizeAgentMentionToken("Baba")).toBe("Baba");
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
it("trims after stripping entities", () => {
|
|
|
|
|
expect(normalizeAgentMentionToken("Baba  ")).toBe("Baba");
|
|
|
|
|
});
|
|
|
|
|
});
|