test: share outbound action mock fixture

This commit is contained in:
Peter Steinberger
2026-04-20 18:37:30 +01:00
parent 456bc8df65
commit 4a7e3d9058
3 changed files with 24 additions and 30 deletions

View File

@@ -1,21 +1,10 @@
import { describe, expect, it, vi } from "vitest";
import { normalizeMessageActionInput } from "./message-action-normalization.js";
vi.mock("../../channels/plugins/bootstrap-registry.js", () => ({
getBootstrapChannelPlugin: (channel: string) =>
channel === "feishu"
? {
actions: {
messageActionTargetAliases: {
read: { aliases: ["messageId"] },
pin: { aliases: ["messageId"] },
unpin: { aliases: ["messageId"] },
"list-pins": { aliases: ["chatId"] },
"channel-info": { aliases: ["chatId"] },
},
},
}
: undefined,
vi.mock("../../channels/plugins/bootstrap-registry.js", async () => ({
getBootstrapChannelPlugin: (
await import("./message-action-test-fixtures.js")
).createFeishuMessageActionBootstrapRegistryMock(),
}));
describe("normalizeMessageActionInput", () => {

View File

@@ -1,21 +1,10 @@
import { describe, expect, it, vi } from "vitest";
import { actionHasTarget, actionRequiresTarget } from "./message-action-spec.js";
vi.mock("../../channels/plugins/bootstrap-registry.js", () => ({
getBootstrapChannelPlugin: (channel: string) =>
channel === "feishu"
? {
actions: {
messageActionTargetAliases: {
read: { aliases: ["messageId"] },
pin: { aliases: ["messageId"] },
unpin: { aliases: ["messageId"] },
"list-pins": { aliases: ["chatId"] },
"channel-info": { aliases: ["chatId"] },
},
},
}
: undefined,
vi.mock("../../channels/plugins/bootstrap-registry.js", async () => ({
getBootstrapChannelPlugin: (
await import("./message-action-test-fixtures.js")
).createFeishuMessageActionBootstrapRegistryMock(),
}));
describe("actionRequiresTarget", () => {

View File

@@ -0,0 +1,16 @@
export function createFeishuMessageActionBootstrapRegistryMock() {
return (channel: string) =>
channel === "feishu"
? {
actions: {
messageActionTargetAliases: {
read: { aliases: ["messageId"] },
pin: { aliases: ["messageId"] },
unpin: { aliases: ["messageId"] },
"list-pins": { aliases: ["chatId"] },
"channel-info": { aliases: ["chatId"] },
},
},
}
: undefined;
}