tests(feishu): reload chat tool after mock reset

This commit is contained in:
Jacob Tomlinson
2026-03-27 18:52:26 +00:00
parent 6eb82fba3c
commit 2e23d44491

View File

@@ -2,7 +2,6 @@ import { beforeEach, describe, expect, it, vi } from "vitest";
import { createTestPluginApi } from "../../../test/helpers/extensions/plugin-api.js";
import { createPluginRuntimeMock } from "../../../test/helpers/extensions/plugin-runtime-mock.js";
import type { OpenClawPluginApi } from "../runtime-api.js";
import { registerFeishuChatTools } from "./chat.js";
const createFeishuClientMock = vi.hoisted(() => vi.fn());
const chatGetMock = vi.hoisted(() => vi.fn());
@@ -13,6 +12,8 @@ vi.mock("./client.js", () => ({
createFeishuClient: createFeishuClientMock,
}));
let registerFeishuChatTools: typeof import("./chat.js").registerFeishuChatTools;
describe("registerFeishuChatTools", () => {
function createChatToolApi(params: {
config: OpenClawPluginApi["config"];
@@ -30,6 +31,7 @@ describe("registerFeishuChatTools", () => {
}
beforeEach(() => {
vi.resetModules();
vi.clearAllMocks();
createFeishuClientMock.mockReturnValue({
im: {
@@ -42,6 +44,10 @@ describe("registerFeishuChatTools", () => {
});
});
beforeEach(async () => {
({ registerFeishuChatTools } = await import("./chat.js"));
});
it("registers feishu_chat and handles info/members actions", async () => {
const registerTool = vi.fn();
registerFeishuChatTools(