mirror of
https://github.com/oven-sh/bun
synced 2026-02-09 10:28:47 +00:00
Add test that timed out in v1.1.36
This commit is contained in:
26
test/js/web/fetch/abortsignal-standalone.test.ts
Normal file
26
test/js/web/fetch/abortsignal-standalone.test.ts
Normal file
@@ -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)");
|
||||
});
|
||||
}
|
||||
Reference in New Issue
Block a user