diff options
-rw-r--r-- | std/http/server.ts | 5 | ||||
-rw-r--r-- | std/http/server_test.ts | 16 |
2 files changed, 16 insertions, 5 deletions
diff --git a/std/http/server.ts b/std/http/server.ts index 82e5f8169..cc0c7cca3 100644 --- a/std/http/server.ts +++ b/std/http/server.ts @@ -262,7 +262,10 @@ export function _parseAddrFromStr(addr: string): HTTPOptions { throw new TypeError("Invalid address."); } - return { hostname: url.hostname, port: Number(url.port) }; + return { + hostname: url.hostname, + port: url.port === "" ? 80 : Number(url.port), + }; } /** diff --git a/std/http/server_test.ts b/std/http/server_test.ts index 5a4a48932..0bfadc632 100644 --- a/std/http/server_test.ts +++ b/std/http/server_test.ts @@ -629,20 +629,20 @@ Deno.test({ port: 8124, transport: "tcp", }; - assertEquals(expected, server.listener.addr); + assertEquals(server.listener.addr, expected); server.close(); }, }); Deno.test({ - name: "server.parseAddrFromStr() should be able to parse IPV6 address", + name: "server._parseAddrFromStr() should be able to parse IPV6 address", fn: (): void => { const addr = _parseAddrFromStr("[::1]:8124"); const expected = { hostname: "[::1]", port: 8124, }; - assertEquals(expected, addr); + assertEquals(addr, expected); }, }); @@ -655,7 +655,15 @@ Deno.test({ port: 8124, transport: "tcp", }; - assertEquals(expected, server.listener.addr); + assertEquals(server.listener.addr, expected); server.close(); }, }); + +Deno.test({ + name: "server._parseAddrFromStr() port 80", + fn: (): void => { + const addr = _parseAddrFromStr(":80"); + assertEquals(addr.port, 80); + }, +}); |