test: stabilize exec approvals homedir

This commit is contained in:
Peter Steinberger
2026-01-21 10:49:01 +00:00
parent 4e4f5558fc
commit cdb35c3aae

View File

@@ -2,7 +2,7 @@ import fs from "node:fs";
import os from "node:os"; import os from "node:os";
import path from "node:path"; import path from "node:path";
import { describe, expect, it } from "vitest"; import { describe, expect, it, vi } from "vitest";
import { import {
matchAllowlist, matchAllowlist,
@@ -111,9 +111,9 @@ describe("exec approvals policy helpers", () => {
describe("exec approvals wildcard agent", () => { describe("exec approvals wildcard agent", () => {
it("merges wildcard allowlist entries with agent entries", () => { it("merges wildcard allowlist entries with agent entries", () => {
const dir = makeTempDir(); const dir = makeTempDir();
const oldHome = process.env.HOME; const homedirSpy = vi.spyOn(os, "homedir").mockReturnValue(dir);
process.env.HOME = dir;
try {
const approvalsPath = path.join(dir, ".clawdbot", "exec-approvals.json"); const approvalsPath = path.join(dir, ".clawdbot", "exec-approvals.json");
fs.mkdirSync(path.dirname(approvalsPath), { recursive: true }); fs.mkdirSync(path.dirname(approvalsPath), { recursive: true });
fs.writeFileSync( fs.writeFileSync(
@@ -136,7 +136,8 @@ describe("exec approvals wildcard agent", () => {
"/bin/hostname", "/bin/hostname",
"/usr/bin/uname", "/usr/bin/uname",
]); ]);
} finally {
process.env.HOME = oldHome; homedirSpy.mockRestore();
}
}); });
}); });