diff options
Diffstat (limited to 'test/bun.js/socket/socket.test.ts')
-rw-r--r-- | test/bun.js/socket/socket.test.ts | 130 |
1 files changed, 0 insertions, 130 deletions
diff --git a/test/bun.js/socket/socket.test.ts b/test/bun.js/socket/socket.test.ts deleted file mode 100644 index 4c58243ef..000000000 --- a/test/bun.js/socket/socket.test.ts +++ /dev/null @@ -1,130 +0,0 @@ -import { expect, it } from "bun:test"; -import { bunExe } from "../bunExe"; -import { connect, spawn } from "bun"; - -it("should keep process alive only when active", async () => { - const { exited, stdout, stderr } = spawn({ - cmd: [bunExe(), "echo.js"], - cwd: import.meta.dir, - stdout: "pipe", - stdin: null, - stderr: "pipe", - env: { - BUN_DEBUG_QUIET_LOGS: 1, - }, - }); - - expect(await exited).toBe(0); - expect(await new Response(stderr).text()).toBe(""); - var lines = (await new Response(stdout).text()).split(/\r?\n/); - expect( - lines.filter(function (line) { - return line.startsWith("[Server]"); - }), - ).toEqual(["[Server] OPENED", "[Server] GOT request", "[Server] CLOSED"]); - expect( - lines.filter(function (line) { - return line.startsWith("[Client]"); - }), - ).toEqual(["[Client] OPENED", "[Client] GOT response", "[Client] CLOSED"]); -}); - -it("listen() should throw connection error for invalid host", () => { - expect(() => { - const handlers = { - open(socket) { - socket.close(); - }, - data() {}, - }; - - Bun.listen({ - port: 4423, - hostname: "whatishtis.com", - socket: handlers, - }); - }).toThrow(); -}); - -it("should reject on connection error, calling both connectError() and rejecting the promise", done => { - var data = {}; - connect({ - data, - hostname: "localhost", - port: 55555, - socket: { - connectError(socket, error) { - expect(socket).toBeDefined(); - expect(socket.data).toBe(data); - expect(error).toBeDefined(); - expect(error.name).toBe("SystemError"); - expect(error.message).toBe("Failed to connect"); - }, - data() { - done(new Error("Unexpected data()")); - }, - drain() { - done(new Error("Unexpected drain()")); - }, - close() { - done(new Error("Unexpected close()")); - }, - end() { - done(new Error("Unexpected end()")); - }, - error() { - done(new Error("Unexpected error()")); - }, - open() { - done(new Error("Unexpected open()")); - }, - }, - }).then( - () => done(new Error("Promise should reject instead")), - err => { - expect(err).toBeDefined(); - expect(err.name).toBe("SystemError"); - expect(err.message).toBe("Failed to connect"); - - done(); - }, - ); -}); - -// this also tests we mark the promise as handled if connectError() is called -it("should handle connection error", done => { - var data = {}; - connect({ - data, - hostname: "localhost", - port: 55555, - socket: { - connectError(socket, error) { - expect(socket).toBeDefined(); - expect(socket.data).toBe(data); - expect(error).toBeDefined(); - expect(error.name).toBe("SystemError"); - expect(error.message).toBe("Failed to connect"); - done(); - }, - data() { - done(new Error("Unexpected data()")); - }, - drain() { - done(new Error("Unexpected drain()")); - }, - close() { - done(new Error("Unexpected close()")); - }, - end() { - done(new Error("Unexpected end()")); - }, - error() { - done(new Error("Unexpected error()")); - }, - open() { - done(new Error("Unexpected open()")); - }, - }, - }); -}); |