import { describe, expect, it, vi } from "vitest"; import { resolveSlackChannelAllowlist } from "./resolve-channels.js"; describe("resolveSlackChannelAllowlist", () => { it("resolves by name and prefers active channels", async () => { const client = { conversations: { list: vi.fn().mockResolvedValue({ channels: [ { id: "C1", name: "general", is_archived: true }, { id: "C2", name: "general", is_archived: false }, ], }), }, }; const res = await resolveSlackChannelAllowlist({ token: "xoxb-test", entries: ["#general"], client: client as never, }); expect(res[0]?.resolved).toBe(true); expect(res[0]?.id).toBe("C2"); }); it("keeps unresolved entries", async () => { const client = { conversations: { list: vi.fn().mockResolvedValue({ channels: [] }), }, }; const res = await resolveSlackChannelAllowlist({ token: "xoxb-test", entries: ["#does-not-exist"], client: client as never, }); expect(res[0]?.resolved).toBe(false); }); });