























@@ -3,14 +3,14 @@ import { tmpdir } from "node:os";
33import { join } from "node:path";
44import { afterEach, beforeEach, describe, expect, it } from "vitest";
55import { closeOpenClawStateDatabaseForTest } from "../state/openclaw-state-db.js";
6+import { captureEnv, setTestEnvValue } from "../test-utils/env.js";
67import {
78buildAgentModelCatalogCacheKey,
89readCachedAgentModelCatalog,
910writeCachedAgentModelCatalog,
1011} from "./model-catalog-state-cache.js";
111212-const ORIGINAL_STATE_DIR = process.env.OPENCLAW_STATE_DIR;
13-13+let envSnapshot: ReturnType<typeof captureEnv>;
1414let stateDir: string;
15151616function configuredModel(id: string) {
@@ -32,17 +32,14 @@ function configuredModel(id: string) {
32323333describe("model catalog state cache", () => {
3434beforeEach(() => {
35+envSnapshot = captureEnv(["OPENCLAW_STATE_DIR"]);
3536stateDir = mkdtempSync(join(tmpdir(), "openclaw-model-catalog-state-"));
36-process.env.OPENCLAW_STATE_DIR = stateDir;
37+setTestEnvValue("OPENCLAW_STATE_DIR", stateDir);
3738});
38393940afterEach(() => {
4041closeOpenClawStateDatabaseForTest();
41-if (ORIGINAL_STATE_DIR === undefined) {
42-delete process.env.OPENCLAW_STATE_DIR;
43-} else {
44-process.env.OPENCLAW_STATE_DIR = ORIGINAL_STATE_DIR;
45-}
42+envSnapshot.restore();
4643rmSync(stateDir, { recursive: true, force: true });
4744});
4845此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。