mirror of
https://github.com/openclaw/openclaw.git
synced 2026-05-05 08:11:44 +00:00
feat: add exec approvals tooling and service status
This commit is contained in:
59
src/cli/service-cli.coverage.test.ts
Normal file
59
src/cli/service-cli.coverage.test.ts
Normal file
@@ -0,0 +1,59 @@
|
||||
import { Command } from "commander";
|
||||
import { describe, expect, it, vi } from "vitest";
|
||||
|
||||
const runDaemonStatus = vi.fn(async () => {});
|
||||
const runNodeDaemonStatus = vi.fn(async () => {});
|
||||
|
||||
vi.mock("./daemon-cli/runners.js", () => ({
|
||||
runDaemonInstall: vi.fn(async () => {}),
|
||||
runDaemonRestart: vi.fn(async () => {}),
|
||||
runDaemonStart: vi.fn(async () => {}),
|
||||
runDaemonStatus: (opts: unknown) => runDaemonStatus(opts),
|
||||
runDaemonStop: vi.fn(async () => {}),
|
||||
runDaemonUninstall: vi.fn(async () => {}),
|
||||
}));
|
||||
|
||||
vi.mock("./node-cli/daemon.js", () => ({
|
||||
runNodeDaemonInstall: vi.fn(async () => {}),
|
||||
runNodeDaemonRestart: vi.fn(async () => {}),
|
||||
runNodeDaemonStart: vi.fn(async () => {}),
|
||||
runNodeDaemonStatus: (opts: unknown) => runNodeDaemonStatus(opts),
|
||||
runNodeDaemonStop: vi.fn(async () => {}),
|
||||
runNodeDaemonUninstall: vi.fn(async () => {}),
|
||||
}));
|
||||
|
||||
vi.mock("./deps.js", () => ({
|
||||
createDefaultDeps: vi.fn(),
|
||||
}));
|
||||
|
||||
describe("service CLI coverage", () => {
|
||||
it("routes service gateway status to daemon status", async () => {
|
||||
runDaemonStatus.mockClear();
|
||||
runNodeDaemonStatus.mockClear();
|
||||
|
||||
const { registerServiceCli } = await import("./service-cli.js");
|
||||
const program = new Command();
|
||||
program.exitOverride();
|
||||
registerServiceCli(program);
|
||||
|
||||
await program.parseAsync(["service", "gateway", "status"], { from: "user" });
|
||||
|
||||
expect(runDaemonStatus).toHaveBeenCalledTimes(1);
|
||||
expect(runNodeDaemonStatus).toHaveBeenCalledTimes(0);
|
||||
});
|
||||
|
||||
it("routes service node status to node daemon status", async () => {
|
||||
runDaemonStatus.mockClear();
|
||||
runNodeDaemonStatus.mockClear();
|
||||
|
||||
const { registerServiceCli } = await import("./service-cli.js");
|
||||
const program = new Command();
|
||||
program.exitOverride();
|
||||
registerServiceCli(program);
|
||||
|
||||
await program.parseAsync(["service", "node", "status"], { from: "user" });
|
||||
|
||||
expect(runNodeDaemonStatus).toHaveBeenCalledTimes(1);
|
||||
expect(runDaemonStatus).toHaveBeenCalledTimes(0);
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user