mirror of
https://github.com/openclaw/openclaw.git
synced 2026-03-13 11:00:50 +00:00
40 lines
1.0 KiB
TypeScript
40 lines
1.0 KiB
TypeScript
import { describe, expect, it, vi } from "vitest";
|
|
import type { RuntimeEnv } from "../runtime.js";
|
|
import { resolveRuntimeEnv } from "./runtime.js";
|
|
|
|
describe("resolveRuntimeEnv", () => {
|
|
it("returns provided runtime when present", () => {
|
|
const runtime: RuntimeEnv = {
|
|
log: vi.fn(),
|
|
error: vi.fn(),
|
|
exit: vi.fn(() => {
|
|
throw new Error("exit");
|
|
}),
|
|
};
|
|
const logger = {
|
|
info: vi.fn(),
|
|
error: vi.fn(),
|
|
};
|
|
|
|
const resolved = resolveRuntimeEnv({ runtime, logger });
|
|
|
|
expect(resolved).toBe(runtime);
|
|
expect(logger.info).not.toHaveBeenCalled();
|
|
expect(logger.error).not.toHaveBeenCalled();
|
|
});
|
|
|
|
it("creates logger-backed runtime when runtime is missing", () => {
|
|
const logger = {
|
|
info: vi.fn(),
|
|
error: vi.fn(),
|
|
};
|
|
|
|
const resolved = resolveRuntimeEnv({ logger });
|
|
resolved.log?.("hello %s", "world");
|
|
resolved.error?.("bad %d", 7);
|
|
|
|
expect(logger.info).toHaveBeenCalledWith("hello world");
|
|
expect(logger.error).toHaveBeenCalledWith("bad 7");
|
|
});
|
|
});
|