Skip to content

Commit 1728ed5

Browse files
test: test case for multiple res.writeHead and res.getHeader
1 parent 6638f09 commit 1728ed5

File tree

1 file changed

+60
-0
lines changed

1 file changed

+60
-0
lines changed

test/parallel/test-http-write-head-2.js

+60
Original file line numberDiff line numberDiff line change
@@ -59,3 +59,63 @@ const http = require('http');
5959
}));
6060
}));
6161
}
62+
63+
{
64+
const server = http.createServer((req, res) => {
65+
try {
66+
res.writeHead(200,[ 'test', '1' ]);
67+
res.writeHead(200,[ 'test2', '2' ]);
68+
res.end();
69+
} catch (error) {
70+
assert.strictEqual(err.code, 'ERR_INVALID_ARG_VALUE');
71+
}
72+
});
73+
74+
server.listen(0, () => {
75+
http.get({ port: server.address().port }, common.mustCall((res) => {
76+
assert.equal('test' in res.headers, false)
77+
assert.strictEqual(res.headers.test2, '2');
78+
res.resume().on('end', common.mustCall(() => {
79+
server.close();
80+
}));
81+
}));
82+
});
83+
}
84+
85+
{
86+
const server = http.createServer((req, res) => {
87+
res.writeHead(200,[ 'test', '1' ]);
88+
assert.equal(res.getHeader('test'), undefined)
89+
res.end();
90+
});
91+
92+
server.listen(0, () => {
93+
http.get({ port: server.address().port }, (res) => {
94+
assert.strictEqual(res.headers.test, '1');
95+
res.resume().on('end', common.mustCall(() => {
96+
server.close();
97+
}));
98+
});
99+
});
100+
}
101+
102+
{
103+
const server = http.createServer((req, res) => {
104+
res.setHeader('test2','2')
105+
res.writeHead(200,[ 'test', '1' ]);
106+
assert.strictEqual(res.getHeader('test'), '1');
107+
assert.strictEqual(res.getHeader('test2'), '2');
108+
res.end();
109+
});
110+
111+
server.listen(0, () => {
112+
http.get({ port: server.address().port }, (res) => {
113+
assert.strictEqual(res.headers.test, '1');
114+
assert.strictEqual(res.headers.test2, '2');
115+
res.resume().on('end', common.mustCall(() => {
116+
server.close();
117+
}));
118+
});
119+
});
120+
}
121+

0 commit comments

Comments
 (0)