Files
openclaw/src/plugins/runtime/runtime-task-test-harness.ts
T
Peter Steinberger 3d76a4af92 refactor(deadcode): privatize runtime test seams (#108338)
* refactor(sessions): privatize runtime test seams

* refactor(commitments): privatize extraction test seams

* refactor(flows): privatize doctor health seams

* refactor(tasks): privatize registry test seams

* build(commitments): bundle Docker test support

* chore(deadcode): shrink runtime export baseline
2026-07-15 07:27:10 -07:00

46 lines
1.5 KiB
TypeScript

// Runtime task test harness helpers build mocked plugin runtimes for task-flow tests.
import { vi } from "vitest";
import {
resetDetachedTaskLifecycleRuntimeForTests,
resetTaskFlowRegistryForTests,
resetTaskRegistryControlRuntimeForTests,
resetTaskRegistryDeliveryRuntimeForTests,
resetTaskRegistryForTests,
setTaskRegistryControlRuntimeForTests,
setTaskRegistryDeliveryRuntimeForTests,
} from "../../tasks/task-runtime.test-helpers.js";
const runtimeTaskMocks = vi.hoisted(() => ({
sendMessageMock: vi.fn(),
cancelSessionMock: vi.fn(),
killSubagentRunAdminMock: vi.fn(),
}));
export function getRuntimeTaskMocks() {
return runtimeTaskMocks;
}
export function installRuntimeTaskDeliveryMock(): void {
setTaskRegistryDeliveryRuntimeForTests({
sendMessage: runtimeTaskMocks.sendMessageMock,
});
setTaskRegistryControlRuntimeForTests({
cancelActiveCronTaskRun: () => false,
getAcpSessionManager: () => ({
cancelSession: runtimeTaskMocks.cancelSessionMock,
}),
killSubagentRunAdmin: (params: unknown) => runtimeTaskMocks.killSubagentRunAdminMock(params),
});
}
export function resetRuntimeTaskTestState(
taskRegistryOptions?: Parameters<typeof resetTaskRegistryForTests>[0],
): void {
resetDetachedTaskLifecycleRuntimeForTests();
resetTaskRegistryControlRuntimeForTests();
resetTaskRegistryDeliveryRuntimeForTests();
resetTaskRegistryForTests(taskRegistryOptions);
resetTaskFlowRegistryForTests({ persist: false });
vi.clearAllMocks();
}