diff options
author | 2022-12-28 18:41:07 -0800 | |
---|---|---|
committer | 2022-12-28 18:41:07 -0800 | |
commit | 8e9af05d6a206b2726a827f5e141c859d26b6ede (patch) | |
tree | add5bbb8c3c0d726143f31892e43b357ff6afac0 /test/bun.js/websocket.test.js | |
parent | ba0b5baee4ebe58f6c4e35932a9473b8eb2f2225 (diff) | |
download | bun-8e9af05d6a206b2726a827f5e141c859d26b6ede.tar.gz bun-8e9af05d6a206b2726a827f5e141c859d26b6ede.tar.zst bun-8e9af05d6a206b2726a827f5e141c859d26b6ede.zip |
[WebSocket] Allow `http:` and `https:` protocols
See https://github.com/whatwg/websockets/pull/37
Diffstat (limited to 'test/bun.js/websocket.test.js')
-rw-r--r-- | test/bun.js/websocket.test.js | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/test/bun.js/websocket.test.js b/test/bun.js/websocket.test.js index 3680e2749..ff5362050 100644 --- a/test/bun.js/websocket.test.js +++ b/test/bun.js/websocket.test.js @@ -19,6 +19,19 @@ describe("WebSocket", () => { await closed; }); + it("should connect over https", async () => { + const ws = new WebSocket(TEST_WEBSOCKET_HOST.replaceAll("wss:", "https:")); + await new Promise((resolve, reject) => { + ws.onopen = resolve; + ws.onerror = reject; + }); + var closed = new Promise((resolve, reject) => { + ws.onclose = resolve; + }); + ws.close(); + await closed; + }); + it("supports headers", (done) => { const server = Bun.serve({ port: 8024, @@ -42,6 +55,24 @@ describe("WebSocket", () => { }, }); }); + + it("should connect over http", (done) => { + const server = Bun.serve({ + port: 8025, + fetch(req, server) { + server.stop(); + done(); + return new Response(); + }, + websocket: { + open(ws) { + ws.close(); + }, + }, + }); + const ws = new WebSocket(`http://${server.hostname}:${server.port}`, {}); + }); + it("should send and receive messages", async () => { const ws = new WebSocket(TEST_WEBSOCKET_HOST); await new Promise((resolve, reject) => { |