aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com> 2023-07-24 19:18:07 -0700
committerGravatar Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com> 2023-07-24 19:18:07 -0700
commit1f1d0bfcfbc839cad76c9bc2d644bfa8bd299a1a (patch)
tree5fdae35c89019e7231ef0814aa650683f43a0abf
parent4ebf858f43a88d715eab7201f7c3c92588d4a75d (diff)
downloadbun-1f1d0bfcfbc839cad76c9bc2d644bfa8bd299a1a.tar.gz
bun-1f1d0bfcfbc839cad76c9bc2d644bfa8bd299a1a.tar.zst
bun-1f1d0bfcfbc839cad76c9bc2d644bfa8bd299a1a.zip
Make this test less flaky
-rw-r--r--test/js/web/fetch/fetch-leak-test-fixture.js3
-rw-r--r--test/js/web/fetch/fetch-leak.test.js6
2 files changed, 6 insertions, 3 deletions
diff --git a/test/js/web/fetch/fetch-leak-test-fixture.js b/test/js/web/fetch/fetch-leak-test-fixture.js
index c83bbea83..1767cdb04 100644
--- a/test/js/web/fetch/fetch-leak-test-fixture.js
+++ b/test/js/web/fetch/fetch-leak-test-fixture.js
@@ -6,7 +6,7 @@ if (typeof SERVER === "undefined" || !SERVER?.length) {
throw new Error("SERVER environment variable is not set");
}
-const COUNT = parseInt(process.env.COUNT || "50", 10);
+const COUNT = parseInt(process.env.COUNT || "200", 10);
await (async function runAll() {
var fetches = new Array(COUNT);
let i = 0;
@@ -28,7 +28,6 @@ await (async function runAll() {
})();
await Bun.sleep(10);
Bun.gc(true);
-
if ((heapStats().objectTypeCounts.Response ?? 0) > 1 + ((COUNT / 2) | 0)) {
throw new Error("Too many Response objects: " + heapStats().objectTypeCounts.Response);
}
diff --git a/test/js/web/fetch/fetch-leak.test.js b/test/js/web/fetch/fetch-leak.test.js
index fa8b225bd..86b356227 100644
--- a/test/js/web/fetch/fetch-leak.test.js
+++ b/test/js/web/fetch/fetch-leak.test.js
@@ -5,10 +5,12 @@ import { bunEnv, bunExe } from "harness";
describe("fetch doesn't leak", () => {
test("fixture #1", async () => {
const body = new Blob(["some body in here!".repeat(100)]);
+ var count = 0;
const server = Bun.serve({
port: 0,
fetch(req) {
+ count++;
return new Response(body);
},
});
@@ -17,15 +19,17 @@ describe("fetch doesn't leak", () => {
env: {
...bunEnv,
SERVER: `http://${server.hostname}:${server.port}`,
+ COUNT: "200",
},
stderr: "inherit",
stdout: "inherit",
- cmd: [bunExe(), join(import.meta.dir, "fetch-leak-test-fixture.js")],
+ cmd: [bunExe(), "--smol", join(import.meta.dir, "fetch-leak-test-fixture.js")],
});
const exitCode = await proc.exited;
server.stop(true);
expect(exitCode).toBe(0);
+ expect(count).toBe(200);
});
test("fixture #2", async () => {