test(contracts): hoist shared plugin mock ids

This commit is contained in:
Peter Steinberger
2026-03-29 19:54:07 +01:00
parent 34648235a3
commit 58dde4b016
2 changed files with 29 additions and 26 deletions

View File

@@ -36,11 +36,23 @@ const { createInboundSlackTestContext, prepareSlackMessage } = loadBundledPlugin
opts: { source: string };
}) => Promise<SlackPrepareResult>;
}>("slack");
const telegramHarnessModuleId = resolveRelativeBundledPluginPublicModuleId({
fromModuleUrl: import.meta.url,
pluginId: "telegram",
artifactBasename: "src/bot-message-context.test-harness.js",
});
const { telegramHarnessModuleId, signalApiModuleId, whatsAppTestApiModuleId } = vi.hoisted(() => ({
telegramHarnessModuleId: resolveRelativeBundledPluginPublicModuleId({
fromModuleUrl: import.meta.url,
pluginId: "telegram",
artifactBasename: "src/bot-message-context.test-harness.js",
}),
signalApiModuleId: resolveRelativeBundledPluginPublicModuleId({
fromModuleUrl: import.meta.url,
pluginId: "signal",
artifactBasename: "api.js",
}),
whatsAppTestApiModuleId: resolveRelativeBundledPluginPublicModuleId({
fromModuleUrl: import.meta.url,
pluginId: "whatsapp",
artifactBasename: "test-api.js",
}),
}));
async function buildTelegramMessageContextForTest(params: {
cfg: OpenClawConfig;
@@ -55,17 +67,6 @@ async function buildTelegramMessageContextForTest(params: {
return await telegramHarnessModule.buildTelegramMessageContextForTest(params);
}
const signalApiModuleId = resolveRelativeBundledPluginPublicModuleId({
fromModuleUrl: import.meta.url,
pluginId: "signal",
artifactBasename: "api.js",
});
const whatsAppTestApiModuleId = resolveRelativeBundledPluginPublicModuleId({
fromModuleUrl: import.meta.url,
pluginId: "whatsapp",
artifactBasename: "test-api.js",
});
const dispatchInboundMessageMock = vi.hoisted(() =>
vi.fn(
async (params: {

View File

@@ -44,16 +44,18 @@ const { sendMessageZalouser, parseZalouserOutboundTarget } = loadBundledPluginTe
parseZalouserOutboundTarget: ParseZalouserOutboundTarget;
}>("zalouser");
const zaloTestApiModuleId = resolveRelativeBundledPluginPublicModuleId({
fromModuleUrl: import.meta.url,
pluginId: "zalo",
artifactBasename: "test-api.js",
});
const zalouserTestApiModuleId = resolveRelativeBundledPluginPublicModuleId({
fromModuleUrl: import.meta.url,
pluginId: "zalouser",
artifactBasename: "test-api.js",
});
const { zaloTestApiModuleId, zalouserTestApiModuleId } = vi.hoisted(() => ({
zaloTestApiModuleId: resolveRelativeBundledPluginPublicModuleId({
fromModuleUrl: import.meta.url,
pluginId: "zalo",
artifactBasename: "test-api.js",
}),
zalouserTestApiModuleId: resolveRelativeBundledPluginPublicModuleId({
fromModuleUrl: import.meta.url,
pluginId: "zalouser",
artifactBasename: "test-api.js",
}),
}));
vi.mock(zaloTestApiModuleId, async (importOriginal) => {
const actual = await importOriginal<object>();