From e8d58f24af4e3e12794894b2419d5cb37960b77e Mon Sep 17 00:00:00 2001 From: dave caruso Date: Thu, 14 Sep 2023 20:30:30 -0400 Subject: fix(runtime): emit `node:net` connect error event vs throw (#5336) * fix(runtime): emit `node:net` connect error event vs throw * oops * finally * ok * we are good --- test/js/node/net/node-net.test.ts | 30 +++++++++++++++++++++++++++++- 1 file changed, 29 insertions(+), 1 deletion(-) (limited to 'test/js/node/net/node-net.test.ts') diff --git a/test/js/node/net/node-net.test.ts b/test/js/node/net/node-net.test.ts index efdff4bc5..109391af5 100644 --- a/test/js/node/net/node-net.test.ts +++ b/test/js/node/net/node-net.test.ts @@ -370,8 +370,36 @@ it("should handle connection error", done => { } errored = true; expect(error).toBeDefined(); - expect(error.name).toBe("SystemError"); expect(error.message).toBe("Failed to connect"); + expect((error as any).code).toBe("ECONNREFUSED"); + }); + + socket.on("connect", () => { + done(new Error("Should not have connected")); + }); + + socket.on("close", () => { + expect(errored).toBe(true); + done(); + }); +}); + +it("should handle connection error (unix)", done => { + let errored = false; + + // @ts-ignore + const socket = connect("loser", () => { + done(new Error("Should not have connected")); + }); + + socket.on("error", error => { + if (errored) { + return done(new Error("Should not have errored twice")); + } + errored = true; + expect(error).toBeDefined(); + expect(error.message).toBe("Failed to connect"); + expect((error as any).code).toBe("ENOENT"); }); socket.on("connect", () => { -- cgit v1.2.3