29 lines
956 B
TypeScript
29 lines
956 B
TypeScript
import { describe, expect, it } from "vitest";
|
|
import {
|
|
buildAgentMentionHref,
|
|
buildProjectMentionHref,
|
|
extractAgentMentionIds,
|
|
extractProjectMentionIds,
|
|
parseAgentMentionHref,
|
|
parseProjectMentionHref,
|
|
} from "./project-mentions.js";
|
|
|
|
describe("project-mentions", () => {
|
|
it("round-trips project mentions with color metadata", () => {
|
|
const href = buildProjectMentionHref("project-123", "#336699");
|
|
expect(parseProjectMentionHref(href)).toEqual({
|
|
projectId: "project-123",
|
|
color: "#336699",
|
|
});
|
|
expect(extractProjectMentionIds(`[@Paperclip App](${href})`)).toEqual(["project-123"]);
|
|
});
|
|
|
|
it("round-trips agent mentions with icon metadata", () => {
|
|
const href = buildAgentMentionHref("agent-123", "code");
|
|
expect(parseAgentMentionHref(href)).toEqual({
|
|
agentId: "agent-123",
|
|
icon: "code",
|
|
});
|
|
expect(extractAgentMentionIds(`[@CodexCoder](${href})`)).toEqual(["agent-123"]);
|
|
});
|
|
});
|