import { describe, expect, it } from "vitest"; import { parseMessagingCommand } from "./messaging-commands.js"; describe("parseMessagingCommand", () => { it("parses the minimal command set case-insensitively", () => { expect(parseMessagingCommand("YES")).toBe("approve"); expect(parseMessagingCommand("yes")).toBe("approve"); expect(parseMessagingCommand(" yes ")).toBe("approve"); expect(parseMessagingCommand("NO")).toBe("decline"); expect(parseMessagingCommand("no")).toBe("decline"); expect(parseMessagingCommand("LEAVE")).toBe("leave"); expect(parseMessagingCommand("leave")).toBe("leave"); }); it("treats everything else as a normal message", () => { expect(parseMessagingCommand("yes please")).toBeNull(); expect(parseMessagingCommand("YES!")).toBeNull(); expect(parseMessagingCommand("")).toBeNull(); expect(parseMessagingCommand("hello")).toBeNull(); expect(parseMessagingCommand("leave the group")).toBeNull(); }); });