summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--std/http/server.ts5
-rw-r--r--std/http/server_test.ts16
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);
+ },
+});