mirror of
https://github.com/openclaw/openclaw.git
synced 2026-05-08 06:11:24 +00:00
feat(channels): add resolve command + defaults
This commit is contained in:
43
src/slack/resolve-channels.test.ts
Normal file
43
src/slack/resolve-channels.test.ts
Normal file
@@ -0,0 +1,43 @@
|
||||
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);
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user