Spaces:
Paused
Paused
| 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); | |
| }); | |
| }); | |