mirror of
https://github.com/openclaw/openclaw.git
synced 2026-06-02 06:24:55 +00:00
52 lines
1.3 KiB
TypeScript
52 lines
1.3 KiB
TypeScript
import { beforeAll, beforeEach, describe, expect, it } from "vitest";
|
|
import {
|
|
cleanupCommandLogMessages,
|
|
createCleanupCommandRuntime,
|
|
resetCleanupCommandMocks,
|
|
silenceCleanupCommandRuntime,
|
|
} from "./cleanup-command.test-support.js";
|
|
|
|
describe("resetCommand", () => {
|
|
const runtime = createCleanupCommandRuntime();
|
|
let resetCommand: typeof import("./reset.js").resetCommand;
|
|
|
|
beforeAll(async () => {
|
|
({ resetCommand } = await import("./reset.js"));
|
|
});
|
|
|
|
beforeEach(() => {
|
|
resetCleanupCommandMocks();
|
|
silenceCleanupCommandRuntime(runtime);
|
|
});
|
|
|
|
it("recommends creating a backup before state-destructive reset scopes", async () => {
|
|
await resetCommand(runtime, {
|
|
scope: "config+creds+sessions",
|
|
yes: true,
|
|
nonInteractive: true,
|
|
dryRun: true,
|
|
});
|
|
|
|
expect(
|
|
cleanupCommandLogMessages(runtime).some((message) =>
|
|
message.includes("openclaw backup create"),
|
|
),
|
|
).toBe(true);
|
|
});
|
|
|
|
it("does not recommend backup for config-only reset", async () => {
|
|
await resetCommand(runtime, {
|
|
scope: "config",
|
|
yes: true,
|
|
nonInteractive: true,
|
|
dryRun: true,
|
|
});
|
|
|
|
expect(
|
|
cleanupCommandLogMessages(runtime).some((message) =>
|
|
message.includes("openclaw backup create"),
|
|
),
|
|
).toBe(false);
|
|
});
|
|
});
|