35 lines
982 B
TypeScript
35 lines
982 B
TypeScript
import { describe, expect, it, vi } from "vitest";
|
|
|
|
import type { ClawdbotConfig } from "../../config/config.js";
|
|
import { createSlackActions } from "./slack.actions.js";
|
|
|
|
const handleSlackAction = vi.fn(async () => ({ details: { ok: true } }));
|
|
|
|
vi.mock("../../agents/tools/slack-actions.js", () => ({
|
|
handleSlackAction: (...args: unknown[]) => handleSlackAction(...args),
|
|
}));
|
|
|
|
describe("slack actions adapter", () => {
|
|
it("forwards threadId for read", async () => {
|
|
const cfg = { channels: { slack: { botToken: "tok" } } } as ClawdbotConfig;
|
|
const actions = createSlackActions("slack");
|
|
|
|
await actions.handleAction?.({
|
|
channel: "slack",
|
|
action: "read",
|
|
cfg,
|
|
params: {
|
|
channelId: "C1",
|
|
threadId: "171234.567",
|
|
},
|
|
});
|
|
|
|
const [params] = handleSlackAction.mock.calls[0] ?? [];
|
|
expect(params).toMatchObject({
|
|
action: "readMessages",
|
|
channelId: "C1",
|
|
threadId: "171234.567",
|
|
});
|
|
});
|
|
});
|