34 lines · 1.1 KB · TypeScript
RawDownload
import { describe, expect, it } from "@effect/vitest"; import { resolveUserMessageIntentBadge } from "./userMessageIntentBadge"; describe("user message intent badge", () => {  it("does not label ordinary turn-start messages", () => {    expect(resolveUserMessageIntentBadge(undefined)).toBeNull();    expect(resolveUserMessageIntentBadge("turn_start")).toBeNull();  });   it("labels messages waiting behind the active turn", () => {    expect(resolveUserMessageIntentBadge("queued_turn")).toEqual({      label: "queued",      accessibilityLabel: "Queued behind the active turn",      tone: "queued",    });  });   it("labels messages that steer the active turn", () => {    expect(resolveUserMessageIntentBadge("steer")).toEqual({      label: "steer",      accessibilityLabel: "Steered the active turn",      tone: "steer",    });  });   it("preserves the queued origin after promotion to steer", () => {    expect(resolveUserMessageIntentBadge("promoted_queued_to_steer")).toEqual({      label: "queued → steer",      accessibilityLabel: "Originally queued, then promoted to steer the active turn",      tone: "steer",    });  });});