refactor: dedupe tests and harden suite isolation

This commit is contained in:
Peter Steinberger
2026-03-24 19:15:32 +00:00
parent d60112287f
commit a4327ad544
55 changed files with 3297 additions and 5022 deletions

View File

@@ -24,7 +24,13 @@ vi.mock("../infra/shell-env.js", async (importOriginal) => {
vi.mock("../infra/exec-approvals.js", async (importOriginal) => {
const mod = await importOriginal<typeof import("../infra/exec-approvals.js")>();
const approvals: ExecApprovalsResolved = {
return { ...mod, resolveExecApprovals: () => createExecApprovals() };
});
let createExecTool: typeof import("./bash-tools.exec.js").createExecTool;
function createExecApprovals(): ExecApprovalsResolved {
return {
path: "/tmp/exec-approvals.json",
socketPath: "/tmp/exec-approvals.sock",
token: "token",
@@ -53,10 +59,7 @@ vi.mock("../infra/exec-approvals.js", async (importOriginal) => {
agents: {},
},
};
return { ...mod, resolveExecApprovals: () => approvals };
});
let createExecTool: typeof import("./bash-tools.exec.js").createExecTool;
}
async function loadFreshBashExecPathModulesForTest() {
vi.resetModules();
@@ -70,36 +73,7 @@ async function loadFreshBashExecPathModulesForTest() {
});
vi.doMock("../infra/exec-approvals.js", async (importOriginal) => {
const mod = await importOriginal<typeof import("../infra/exec-approvals.js")>();
const approvals: ExecApprovalsResolved = {
path: "/tmp/exec-approvals.json",
socketPath: "/tmp/exec-approvals.sock",
token: "token",
defaults: {
security: "full",
ask: "off",
askFallback: "full",
autoAllowSkills: false,
},
agent: {
security: "full",
ask: "off",
askFallback: "full",
autoAllowSkills: false,
},
allowlist: [],
file: {
version: 1,
socket: { path: "/tmp/exec-approvals.sock", token: "token" },
defaults: {
security: "full",
ask: "off",
askFallback: "full",
autoAllowSkills: false,
},
agents: {},
},
};
return { ...mod, resolveExecApprovals: () => approvals };
return { ...mod, resolveExecApprovals: () => createExecApprovals() };
});
const bashExec = await import("./bash-tools.exec.js");
return {