mirror of
https://github.com/openclaw/openclaw.git
synced 2026-05-10 02:12:44 +00:00
test: cover shared installer flow helpers
This commit is contained in:
51
src/infra/install-mode-options.test.ts
Normal file
51
src/infra/install-mode-options.test.ts
Normal file
@@ -0,0 +1,51 @@
|
||||
import { describe, expect, it } from "vitest";
|
||||
import {
|
||||
resolveInstallModeOptions,
|
||||
resolveTimedInstallModeOptions,
|
||||
} from "./install-mode-options.js";
|
||||
|
||||
describe("install mode option helpers", () => {
|
||||
it("applies logger, mode, and dryRun defaults", () => {
|
||||
const logger = { warn: (_message: string) => {} };
|
||||
const result = resolveInstallModeOptions({}, logger);
|
||||
|
||||
expect(result).toEqual({
|
||||
logger,
|
||||
mode: "install",
|
||||
dryRun: false,
|
||||
});
|
||||
});
|
||||
|
||||
it("preserves explicit mode and dryRun values", () => {
|
||||
const logger = { warn: (_message: string) => {} };
|
||||
const result = resolveInstallModeOptions(
|
||||
{
|
||||
logger,
|
||||
mode: "update",
|
||||
dryRun: true,
|
||||
},
|
||||
{ warn: () => {} },
|
||||
);
|
||||
|
||||
expect(result).toEqual({
|
||||
logger,
|
||||
mode: "update",
|
||||
dryRun: true,
|
||||
});
|
||||
});
|
||||
|
||||
it("uses default timeout when not provided", () => {
|
||||
const logger = { warn: (_message: string) => {} };
|
||||
const result = resolveTimedInstallModeOptions({}, logger);
|
||||
|
||||
expect(result.timeoutMs).toBe(120_000);
|
||||
expect(result.mode).toBe("install");
|
||||
expect(result.dryRun).toBe(false);
|
||||
});
|
||||
|
||||
it("honors custom timeout default override", () => {
|
||||
const result = resolveTimedInstallModeOptions({}, { warn: () => {} }, 5000);
|
||||
|
||||
expect(result.timeoutMs).toBe(5000);
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user