From 5e191eaf3ab4c876e23bf2b16186438816716ebb Mon Sep 17 00:00:00 2001 From: Jarred Sumner Date: Sun, 24 Nov 2024 05:43:09 -0800 Subject: [PATCH] Add test that timed out in v1.1.36 --- .../web/fetch/abortsignal-standalone.test.ts | 26 +++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 test/js/web/fetch/abortsignal-standalone.test.ts diff --git a/test/js/web/fetch/abortsignal-standalone.test.ts b/test/js/web/fetch/abortsignal-standalone.test.ts new file mode 100644 index 0000000000..ff9a62773d --- /dev/null +++ b/test/js/web/fetch/abortsignal-standalone.test.ts @@ -0,0 +1,26 @@ +import { test, expect } from "bun:test"; + +for (let timeout of [1, 2, 0]) { + test(`AbortSignal.timeout(${timeout})`, async () => { + const count = 10_000; + + const promises = new Array(count); + + const signals = new Array(count); + console.time("[" + count + "x] " + "AbortSignal.timeout(" + timeout + ")"); + for (let i = 0; i < count; i++) { + const signal = AbortSignal.timeout(timeout); + const { promise, resolve, reject } = Promise.withResolvers(); + promises[i] = promise; + signals[i] = signal; + signal.addEventListener("abort", () => { + resolve(); + }); + } + console.timeEnd("[" + count + "x] " + "AbortSignal.timeout(" + timeout + ")"); + + console.time("[" + count + "x] " + "await Promise.all(promises)"); + await Promise.all(promises); + console.timeEnd("[" + count + "x] " + "await Promise.all(promises)"); + }); +}