mirror of
https://github.com/openclaw/openclaw.git
synced 2026-05-18 13:14:46 +00:00
45 lines
1.1 KiB
TypeScript
45 lines
1.1 KiB
TypeScript
import { describe, expect, it } from "vitest";
|
|
import { describeSlackMessageTool } from "./message-tool-api.js";
|
|
|
|
describe("Slack message tool public API", () => {
|
|
it("describes configured Slack message actions without loading channel runtime", () => {
|
|
expect(
|
|
describeSlackMessageTool({
|
|
cfg: {
|
|
channels: {
|
|
slack: {
|
|
botToken: "xoxb-test",
|
|
},
|
|
},
|
|
},
|
|
}),
|
|
).toMatchObject({
|
|
actions: expect.arrayContaining(["send", "upload-file", "read"]),
|
|
capabilities: expect.arrayContaining(["blocks"]),
|
|
});
|
|
});
|
|
|
|
it("honors account-scoped action gates", () => {
|
|
expect(
|
|
describeSlackMessageTool({
|
|
cfg: {
|
|
channels: {
|
|
slack: {
|
|
botToken: "xoxb-default",
|
|
accounts: {
|
|
ops: {
|
|
botToken: "xoxb-ops",
|
|
actions: {
|
|
messages: false,
|
|
},
|
|
},
|
|
},
|
|
},
|
|
},
|
|
},
|
|
accountId: "ops",
|
|
}).actions,
|
|
).not.toContain("upload-file");
|
|
});
|
|
});
|