From abaa69183bf29b09727bad704bfac65ea73e78e2 Mon Sep 17 00:00:00 2001 From: Meghan Denny Date: Mon, 2 Jun 2025 22:03:05 -0800 Subject: [PATCH] write test in server.spec.ts better (#20150) --- test/js/node/net/server.spec.ts | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/test/js/node/net/server.spec.ts b/test/js/node/net/server.spec.ts index d574f76f0e..83772a9cb4 100644 --- a/test/js/node/net/server.spec.ts +++ b/test/js/node/net/server.spec.ts @@ -242,11 +242,18 @@ describe("server.close()", () => { it("server is no longer listening", () => expect(server.listening).toBe(false)); it("server will not accept new connections", async () => { let client = new net.Socket(); + const { promise, resolve, reject } = Promise.withResolvers(); const onError = jest.fn(); const onConnect = jest.fn(); - client.on("error", onError); - client.connect(address as SocketConnectOpts, onConnect); - await Bun.sleep(1); // next event loop cycle + client.on("error", e => { + onError(e); + resolve(); + }); + client.connect(address as SocketConnectOpts, () => { + onConnect(); + resolve(); + }); + await promise; expect(onError).toHaveBeenCalledWith(expect.objectContaining({ code: "ECONNREFUSED" })); expect(onConnect).not.toHaveBeenCalled(); expect(handlers.connection).not.toHaveBeenCalled();