diff --git a/src/cli/daemon-cli/lifecycle.test.ts b/src/cli/daemon-cli/lifecycle.test.ts index 41f7da868a3..9eedb9deca2 100644 --- a/src/cli/daemon-cli/lifecycle.test.ts +++ b/src/cli/daemon-cli/lifecycle.test.ts @@ -1,4 +1,4 @@ -import { beforeEach, describe, expect, it, vi } from "vitest"; +import { beforeAll, beforeEach, describe, expect, it, vi } from "vitest"; type RestartHealthSnapshot = { healthy: boolean; @@ -56,8 +56,13 @@ vi.mock("./lifecycle-core.js", () => ({ })); describe("runDaemonRestart health checks", () => { + let runDaemonRestart: (opts?: { json?: boolean }) => Promise; + + beforeAll(async () => { + ({ runDaemonRestart } = await import("./lifecycle.js")); + }); + beforeEach(() => { - vi.resetModules(); service.readCommand.mockClear(); service.restart.mockClear(); runServiceRestart.mockClear(); @@ -104,7 +109,6 @@ describe("runDaemonRestart health checks", () => { waitForGatewayHealthyRestart.mockResolvedValueOnce(unhealthy).mockResolvedValueOnce(healthy); terminateStaleGatewayPids.mockResolvedValue([1993]); - const { runDaemonRestart } = await import("./lifecycle.js"); const result = await runDaemonRestart({ json: true }); expect(result).toBe(true); @@ -122,8 +126,6 @@ describe("runDaemonRestart health checks", () => { }; waitForGatewayHealthyRestart.mockResolvedValue(unhealthy); - const { runDaemonRestart } = await import("./lifecycle.js"); - await expect(runDaemonRestart({ json: true })).rejects.toMatchObject({ message: "Gateway restart timed out after 60s waiting for health checks.", hints: ["openclaw gateway status --deep", "openclaw doctor"],