From 467666adc74f48748952a3e471a72946733b4cea Mon Sep 17 00:00:00 2001 From: Peter Steinberger Date: Tue, 24 Feb 2026 01:45:58 +0000 Subject: [PATCH] test(sandbox): use focused modules in lightweight suites --- src/agents/sandbox-create-args.test.ts | 3 ++- src/agents/sandbox-explain.test.ts | 8 +++---- src/agents/sandbox-merge.test.ts | 22 ++++++------------- src/agents/sandbox-skills.test.ts | 2 +- .../sandbox.resolveSandboxContext.test.ts | 2 +- 5 files changed, 14 insertions(+), 23 deletions(-) diff --git a/src/agents/sandbox-create-args.test.ts b/src/agents/sandbox-create-args.test.ts index a3107a0da..b11a62eec 100644 --- a/src/agents/sandbox-create-args.test.ts +++ b/src/agents/sandbox-create-args.test.ts @@ -1,5 +1,6 @@ import { describe, expect, it } from "vitest"; -import { buildSandboxCreateArgs, type SandboxDockerConfig } from "./sandbox.js"; +import { buildSandboxCreateArgs } from "./sandbox/docker.js"; +import type { SandboxDockerConfig } from "./sandbox/types.js"; describe("buildSandboxCreateArgs", () => { function createSandboxConfig( diff --git a/src/agents/sandbox-explain.test.ts b/src/agents/sandbox-explain.test.ts index 37ecc8a81..391fc7d05 100644 --- a/src/agents/sandbox-explain.test.ts +++ b/src/agents/sandbox-explain.test.ts @@ -1,10 +1,8 @@ import { describe, expect, it } from "vitest"; import type { OpenClawConfig } from "../config/config.js"; -import { - formatSandboxToolPolicyBlockedMessage, - resolveSandboxConfigForAgent, - resolveSandboxToolPolicyForAgent, -} from "./sandbox.js"; +import { resolveSandboxConfigForAgent } from "./sandbox/config.js"; +import { formatSandboxToolPolicyBlockedMessage } from "./sandbox/runtime-status.js"; +import { resolveSandboxToolPolicyForAgent } from "./sandbox/tool-policy.js"; describe("sandbox explain helpers", () => { it("prefers agent overrides > global > defaults (sandbox tool policy)", () => { diff --git a/src/agents/sandbox-merge.test.ts b/src/agents/sandbox-merge.test.ts index 77ad70b62..0635703b8 100644 --- a/src/agents/sandbox-merge.test.ts +++ b/src/agents/sandbox-merge.test.ts @@ -1,20 +1,12 @@ -import { beforeAll, describe, expect, it } from "vitest"; - -let resolveSandboxScope: typeof import("./sandbox.js").resolveSandboxScope; -let resolveSandboxDockerConfig: typeof import("./sandbox.js").resolveSandboxDockerConfig; -let resolveSandboxBrowserConfig: typeof import("./sandbox.js").resolveSandboxBrowserConfig; -let resolveSandboxPruneConfig: typeof import("./sandbox.js").resolveSandboxPruneConfig; +import { describe, expect, it } from "vitest"; +import { + resolveSandboxBrowserConfig, + resolveSandboxDockerConfig, + resolveSandboxPruneConfig, + resolveSandboxScope, +} from "./sandbox/config.js"; describe("sandbox config merges", () => { - beforeAll(async () => { - ({ - resolveSandboxScope, - resolveSandboxDockerConfig, - resolveSandboxBrowserConfig, - resolveSandboxPruneConfig, - } = await import("./sandbox.js")); - }); - it("resolves sandbox scope deterministically", () => { expect(resolveSandboxScope({})).toBe("agent"); expect(resolveSandboxScope({ perSession: true })).toBe("session"); diff --git a/src/agents/sandbox-skills.test.ts b/src/agents/sandbox-skills.test.ts index d15679b6f..cde1c2e7f 100644 --- a/src/agents/sandbox-skills.test.ts +++ b/src/agents/sandbox-skills.test.ts @@ -4,7 +4,7 @@ import path from "node:path"; import { afterEach, beforeEach, describe, expect, it, vi } from "vitest"; import type { OpenClawConfig } from "../config/config.js"; import { captureFullEnv } from "../test-utils/env.js"; -import { resolveSandboxContext } from "./sandbox.js"; +import { resolveSandboxContext } from "./sandbox/context.js"; import { writeSkill } from "./skills.e2e-test-helpers.js"; vi.mock("./sandbox/docker.js", () => ({ diff --git a/src/agents/sandbox.resolveSandboxContext.test.ts b/src/agents/sandbox.resolveSandboxContext.test.ts index b0a1630c2..2ecec621a 100644 --- a/src/agents/sandbox.resolveSandboxContext.test.ts +++ b/src/agents/sandbox.resolveSandboxContext.test.ts @@ -1,6 +1,6 @@ import { describe, expect, it } from "vitest"; import type { OpenClawConfig } from "../config/config.js"; -import { ensureSandboxWorkspaceForSession, resolveSandboxContext } from "./sandbox.js"; +import { ensureSandboxWorkspaceForSession, resolveSandboxContext } from "./sandbox/context.js"; describe("resolveSandboxContext", () => { it("does not sandbox the agent main session in non-main mode", async () => {