


























@@ -2,19 +2,17 @@ import fs from "node:fs";
22import os from "node:os";
33import path from "node:path";
44import { afterEach, describe, expect, it, vi } from "vitest";
5+import { captureEnv, setTestEnvValue } from "../test-utils/env.js";
566-const originalEnv = {
7-HOME: process.env.HOME,
8-OPENCLAW_HOME: process.env.OPENCLAW_HOME,
9-};
7+const envSnapshot = captureEnv(["HOME", "OPENCLAW_HOME"]);
108119const tempHomes: string[] = [];
12101311function useTempHome(): string {
1412const home = fs.mkdtempSync(path.join(os.tmpdir(), "openclaw-approval-runtime-"));
1513tempHomes.push(home);
16-process.env.HOME = home;
17-process.env.OPENCLAW_HOME = home;
14+setTestEnvValue("HOME", home);
15+setTestEnvValue("OPENCLAW_HOME", home);
1816return home;
1917}
2018@@ -50,16 +48,7 @@ async function importRuntimeTokenModule(): Promise<
50485149afterEach(() => {
5250vi.resetModules();
53-if (originalEnv.HOME === undefined) {
54-delete process.env.HOME;
55-} else {
56-process.env.HOME = originalEnv.HOME;
57-}
58-if (originalEnv.OPENCLAW_HOME === undefined) {
59-delete process.env.OPENCLAW_HOME;
60-} else {
61-process.env.OPENCLAW_HOME = originalEnv.OPENCLAW_HOME;
62-}
51+envSnapshot.restore();
6352for (const home of tempHomes.splice(0)) {
6453fs.rmSync(home, { recursive: true, force: true });
6554}
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。