

























@@ -10,6 +10,8 @@ const DOCKER_E2E_PACKAGE_HELPER_PATH = "scripts/lib/docker-e2e-package.sh";
1010const DOCKER_E2E_IMAGE_HELPER_PATH = "scripts/lib/docker-e2e-image.sh";
1111const DOCKER_E2E_SCENARIOS_PATH = "scripts/lib/docker-e2e-scenarios.mjs";
1212const INSTALL_E2E_RUNNER_PATH = "scripts/docker/install-sh-e2e/run.sh";
13+const CLEANUP_DOCKER_SMOKE_PATH = "scripts/test-cleanup-docker.sh";
14+const INSTALL_E2E_DOCKER_SMOKE_PATH = "scripts/test-install-sh-e2e-docker.sh";
1315const LIVE_CLI_BACKEND_DOCKER_PATH = "scripts/test-live-cli-backend-docker.sh";
1416const LIVE_BUILD_DOCKER_PATH = "scripts/test-live-build-docker.sh";
1517const OPENAI_WEB_SEARCH_MINIMAL_E2E_PATH = "scripts/e2e/openai-web-search-minimal-docker.sh";
@@ -108,6 +110,29 @@ describe("docker build helper", () => {
108110}
109111});
110112113+it("routes standalone Docker smoke runs through the timeout-aware helper", () => {
114+const cleanupSmoke = readFileSync(CLEANUP_DOCKER_SMOKE_PATH, "utf8");
115+const installE2eSmoke = readFileSync(INSTALL_E2E_DOCKER_SMOKE_PATH, "utf8");
116+117+expect(cleanupSmoke).toContain('source "$ROOT_DIR/scripts/lib/docker-e2e-container.sh"');
118+expect(cleanupSmoke).toContain(
119+'DOCKER_COMMAND_TIMEOUT="${DOCKER_COMMAND_TIMEOUT:-${OPENCLAW_CLEANUP_SMOKE_DOCKER_TIMEOUT:-600s}}"',
120+);
121+expect(cleanupSmoke).toContain(
122+'docker_e2e_docker_run_cmd run --rm --platform "$PLATFORM" -t "$IMAGE_NAME"',
123+);
124+expect(cleanupSmoke).not.toContain('docker run --rm --platform "$PLATFORM" -t "$IMAGE_NAME"');
125+126+expect(installE2eSmoke).toContain(
127+'source "$ROOT_DIR/scripts/lib/docker-e2e-container.sh"',
128+);
129+expect(installE2eSmoke).toContain(
130+'DOCKER_COMMAND_TIMEOUT="${DOCKER_COMMAND_TIMEOUT:-${OPENCLAW_INSTALL_E2E_DOCKER_TIMEOUT:-2700s}}"',
131+);
132+expect(installE2eSmoke).toContain("docker_e2e_docker_run_cmd run --rm \\");
133+expect(installE2eSmoke).not.toContain("docker run --rm \\");
134+});
135+111136it("lets Testbox fall back to building when a reused Docker image is missing", () => {
112137const helper = readFileSync(HELPER_PATH, "utf8");
113138const e2eImageHelper = readFileSync(DOCKER_E2E_IMAGE_HELPER_PATH, "utf8");
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。