From 7dae4db52a403396bbe23ec6299f5a06d50e829b Mon Sep 17 00:00:00 2001 From: Dylan Conway <35280289+dylan-conway@users.noreply.github.com> Date: Tue, 5 Sep 2023 06:12:54 -0700 Subject: fix ipv6 localhost fetch (#4498) * `node` null for localhost getaddrinfo * more test --- test/js/web/fetch/fetch.test.ts | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'test/js/web/fetch/fetch.test.ts') diff --git a/test/js/web/fetch/fetch.test.ts b/test/js/web/fetch/fetch.test.ts index 59847dde9..aa44ee76a 100644 --- a/test/js/web/fetch/fetch.test.ts +++ b/test/js/web/fetch/fetch.test.ts @@ -531,6 +531,26 @@ describe("fetch", () => { expect(response2.status).toBe(200); expect(await response2.text()).toBe("0"); }); + + it("should work with ipv6 localhost", async () => { + const server = Bun.serve({ + port: 0, + fetch(req) { + return new Response("Pass!"); + }, + }); + + let res = await fetch(`http://[::1]:${server.port}`); + expect(await res.text()).toBe("Pass!"); + res = await fetch(`http://[::]:${server.port}/`); + expect(await res.text()).toBe("Pass!"); + res = await fetch(`http://[0:0:0:0:0:0:0:1]:${server.port}/`); + expect(await res.text()).toBe("Pass!"); + res = await fetch(`http://[0000:0000:0000:0000:0000:0000:0000:0001]:${server.port}/`); + expect(await res.text()).toBe("Pass!"); + + server.stop(); + }); }); it("simultaneous HTTPS fetch", async () => { -- cgit v1.2.3