


























@@ -4,7 +4,8 @@ import * as net from "node:net";
44import { afterEach, describe, expect, it } from "vitest";
55import { WebSocketServer } from "ws";
667-const CHILD_PROCESS_TIMEOUT_MS = process.env.CI ? 30_000 : 10_000;
7+const CHILD_PROCESS_TIMEOUT_MS = process.env.CI ? 45_000 : 15_000;
8+const PROBE_TIMEOUT_MS = process.env.CI ? 15_000 : 5_000;
89910async function listenOnLoopback(server: Server): Promise<number> {
1011return new Promise((resolve, reject) => {
@@ -216,7 +217,7 @@ describe("SSRF external proxy routing", () => {
216217 resolve({ status: response.statusCode, body });
217218 });
218219 });
219- req.setTimeout(5000, () => {
220+ req.setTimeout(${PROBE_TIMEOUT_MS}, () => {
220221 req.destroy(new Error("node:http request timed out"));
221222 });
222223 req.on("error", reject);
@@ -238,7 +239,7 @@ describe("SSRF external proxy routing", () => {
238239 response.resume();
239240 response.on("end", resolve);
240241 });
241- req.setTimeout(5000, () => {
242+ req.setTimeout(${PROBE_TIMEOUT_MS}, () => {
242243 req.destroy(new Error("node:https request timed out"));
243244 });
244245 req.on("error", reject);
@@ -247,7 +248,7 @@ describe("SSRF external proxy routing", () => {
247248248249 async function websocketProbe(url) {
249250 return new Promise((resolve, reject) => {
250- const ws = new WebSocket(url, { handshakeTimeout: 5000 });
251+ const ws = new WebSocket(url, { handshakeTimeout: ${PROBE_TIMEOUT_MS} });
251252 ws.once("open", () => {
252253 ws.close();
253254 reject(new Error("proxied websocket unexpectedly opened"));
@@ -259,7 +260,7 @@ describe("SSRF external proxy routing", () => {
259260 async function gatewayLoopbackBypassProbe(url) {
260261 return new Promise((resolve, reject) => {
261262 const ws = dangerouslyBypassManagedProxyForGatewayLoopbackControlPlane(url, () =>
262- new WebSocket(url, { handshakeTimeout: 5000 }),
263+ new WebSocket(url, { handshakeTimeout: ${PROBE_TIMEOUT_MS} }),
263264 );
264265 ws.once("open", () => {
265266 ws.close();
@@ -275,7 +276,7 @@ describe("SSRF external proxy routing", () => {
275276 }
276277 try {
277278 const response = await undiciFetch(process.env.OPENCLAW_TEST_TARGET_URL, {
278- signal: AbortSignal.timeout(5000),
279+ signal: AbortSignal.timeout(${PROBE_TIMEOUT_MS}),
279280 });
280281 const body = await response.text();
281282 const nodeHttp = await nodeHttpGet(process.env.OPENCLAW_TEST_NODE_HTTP_TARGET_URL);
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。