From 5e24e283189ca85868cb45e43584454acccd7159 Mon Sep 17 00:00:00 2001 From: Divy Srivastava Date: Mon, 11 Dec 2023 11:11:59 +0530 Subject: fix(ext/node): ServerResponse getHeader() return undefined (#21525) Matches Node's return type. Next.js check for `if (header === undefined)`: https://github.com/vercel/next.js/blob/e02fe314dcd0ae614c65b505c6daafbdeebb920e/packages/next/src/server/base-http/node.ts#L93 --- cli/tests/unit_node/http_test.ts | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) (limited to 'cli/tests') diff --git a/cli/tests/unit_node/http_test.ts b/cli/tests/unit_node/http_test.ts index c46a3de41..5285d8e23 100644 --- a/cli/tests/unit_node/http_test.ts +++ b/cli/tests/unit_node/http_test.ts @@ -874,3 +874,24 @@ Deno.test("[node/http] node:http request.setHeader(header, null) doesn't throw", req.destroy(); } }); + +Deno.test("[node/http] ServerResponse getHeader", async () => { + const { promise, resolve } = Promise.withResolvers(); + const server = http.createServer((_req, res) => { + res.setHeader("foo", "bar"); + assertEquals(res.getHeader("foo"), "bar"); + assertEquals(res.getHeader("ligma"), undefined); + res.end("Hello World"); + }); + + server.listen(async () => { + const { port } = server.address() as { port: number }; + const res = await fetch(`http://localhost:${port}`); + assertEquals(await res.text(), "Hello World"); + server.close(() => { + resolve(); + }); + }); + + await promise; +}); -- cgit v1.2.3