mirror of
https://github.com/openclaw/openclaw.git
synced 2026-03-12 23:40:45 +00:00
79 lines
3.1 KiB
TypeScript
79 lines
3.1 KiB
TypeScript
import { Mock, vi } from "vitest";
|
|
|
|
export const messageCommand: Mock<(...args: unknown[]) => unknown> = vi.fn();
|
|
export const statusCommand: Mock<(...args: unknown[]) => unknown> = vi.fn();
|
|
export const configureCommand: Mock<(...args: unknown[]) => unknown> = vi.fn();
|
|
export const configureCommandWithSections: Mock<(...args: unknown[]) => unknown> = vi.fn();
|
|
export const setupCommand: Mock<(...args: unknown[]) => unknown> = vi.fn();
|
|
export const onboardCommand: Mock<(...args: unknown[]) => unknown> = vi.fn();
|
|
export const callGateway: Mock<(...args: unknown[]) => unknown> = vi.fn();
|
|
export const runChannelLogin: Mock<(...args: unknown[]) => unknown> = vi.fn();
|
|
export const runChannelLogout: Mock<(...args: unknown[]) => unknown> = vi.fn();
|
|
export const runTui: Mock<(...args: unknown[]) => unknown> = vi.fn();
|
|
|
|
export const loadAndMaybeMigrateDoctorConfig: Mock<(...args: unknown[]) => unknown> = vi.fn();
|
|
export const ensureConfigReady: Mock<(...args: unknown[]) => unknown> = vi.fn();
|
|
export const ensurePluginRegistryLoaded: Mock<(...args: unknown[]) => unknown> = vi.fn();
|
|
|
|
export const runtime: {
|
|
log: Mock<(...args: unknown[]) => void>;
|
|
error: Mock<(...args: unknown[]) => void>;
|
|
exit: Mock<(...args: unknown[]) => never>;
|
|
} = {
|
|
log: vi.fn(),
|
|
error: vi.fn(),
|
|
exit: vi.fn(() => {
|
|
throw new Error("exit");
|
|
}),
|
|
};
|
|
|
|
export function installBaseProgramMocks() {
|
|
vi.mock("../commands/message.js", () => ({ messageCommand }));
|
|
vi.mock("../commands/status.js", () => ({ statusCommand }));
|
|
vi.mock("../commands/configure.js", () => ({
|
|
CONFIGURE_WIZARD_SECTIONS: [
|
|
"workspace",
|
|
"model",
|
|
"web",
|
|
"gateway",
|
|
"daemon",
|
|
"channels",
|
|
"skills",
|
|
"health",
|
|
],
|
|
configureCommand,
|
|
configureCommandWithSections,
|
|
configureCommandFromSectionsArg: (sections: unknown, runtime: unknown) => {
|
|
const resolved = Array.isArray(sections) ? sections : [];
|
|
if (resolved.length > 0) {
|
|
return configureCommandWithSections(resolved, runtime);
|
|
}
|
|
return configureCommand({}, runtime);
|
|
},
|
|
}));
|
|
vi.mock("../commands/setup.js", () => ({ setupCommand }));
|
|
vi.mock("../commands/onboard.js", () => ({ onboardCommand }));
|
|
vi.mock("../runtime.js", () => ({ defaultRuntime: runtime }));
|
|
vi.mock("./channel-auth.js", () => ({ runChannelLogin, runChannelLogout }));
|
|
vi.mock("../tui/tui.js", () => ({ runTui }));
|
|
vi.mock("../gateway/call.js", () => ({
|
|
callGateway,
|
|
randomIdempotencyKey: () => "idem-test",
|
|
buildGatewayConnectionDetails: () => ({
|
|
url: "ws://127.0.0.1:1234",
|
|
urlSource: "test",
|
|
message: "Gateway target: ws://127.0.0.1:1234",
|
|
}),
|
|
}));
|
|
vi.mock("./deps.js", () => ({ createDefaultDeps: () => ({}) }));
|
|
}
|
|
|
|
export function installSmokeProgramMocks() {
|
|
vi.mock("./plugin-registry.js", () => ({ ensurePluginRegistryLoaded }));
|
|
vi.mock("../commands/doctor-config-flow.js", () => ({
|
|
loadAndMaybeMigrateDoctorConfig,
|
|
}));
|
|
vi.mock("./program/config-guard.js", () => ({ ensureConfigReady }));
|
|
vi.mock("./preaction.js", () => ({ registerPreActionHooks: () => {} }));
|
|
}
|