Skip to content

Commit dd1cf8b

Browse files
committed
test: refactor test-http-response-statuscode
* move repeated code to function * use strings for expected error (exposes result for [] as empty string) * remove unneeded `common.mustCall()` usage with function arguments that are not callbacks PR-URL: #11274 Reviewed-By: Colin Ihrig <[email protected]> Reviewed-By: James M Snell <[email protected]> Reviewed-By: Santiago Gimeno <[email protected]>
1 parent 87df7e6 commit dd1cf8b

File tree

1 file changed

+20
-42
lines changed

1 file changed

+20
-42
lines changed

test/parallel/test-http-response-statuscode.js

+20-42
Original file line numberDiff line numberDiff line change
@@ -6,76 +6,54 @@ const http = require('http');
66
const MAX_REQUESTS = 13;
77
let reqNum = 0;
88

9-
const createErrorMessage = (code) => {
10-
return new RegExp(`^RangeError: Invalid status code: ${code}$`);
11-
};
9+
function test(res, header, code) {
10+
const errRegExp = new RegExp(`^RangeError: Invalid status code: ${code}$`);
11+
assert.throws(() => {
12+
res.writeHead(header);
13+
}, errRegExp);
14+
}
1215

1316
const server = http.Server(common.mustCall(function(req, res) {
1417
switch (reqNum) {
1518
case 0:
16-
assert.throws(common.mustCall(() => {
17-
res.writeHead(-1);
18-
}), createErrorMessage(-1));
19+
test(res, -1, '-1');
1920
break;
2021
case 1:
21-
assert.throws(common.mustCall(() => {
22-
res.writeHead(Infinity);
23-
}), createErrorMessage(Infinity));
22+
test(res, Infinity, 'Infinity');
2423
break;
2524
case 2:
26-
assert.throws(common.mustCall(() => {
27-
res.writeHead(NaN);
28-
}), createErrorMessage(NaN));
25+
test(res, NaN, 'NaN');
2926
break;
3027
case 3:
31-
assert.throws(common.mustCall(() => {
32-
res.writeHead({});
33-
}), createErrorMessage('\\[object Object\\]'));
28+
test(res, {}, '\\[object Object\\]');
3429
break;
3530
case 4:
36-
assert.throws(common.mustCall(() => {
37-
res.writeHead(99);
38-
}), createErrorMessage(99));
31+
test(res, 99, '99');
3932
break;
4033
case 5:
41-
assert.throws(common.mustCall(() => {
42-
res.writeHead(1000);
43-
}), createErrorMessage(1000));
34+
test(res, 1000, '1000');
4435
break;
4536
case 6:
46-
assert.throws(common.mustCall(() => {
47-
res.writeHead('1000');
48-
}), createErrorMessage('1000'));
37+
test(res, '1000', '1000');
4938
break;
5039
case 7:
51-
assert.throws(common.mustCall(() => {
52-
res.writeHead(null);
53-
}), createErrorMessage(null));
40+
test(res, null, 'null');
5441
break;
5542
case 8:
56-
assert.throws(common.mustCall(() => {
57-
res.writeHead(true);
58-
}), createErrorMessage(true));
43+
test(res, true, 'true');
5944
break;
6045
case 9:
61-
assert.throws(common.mustCall(() => {
62-
res.writeHead([]);
63-
}), createErrorMessage([]));
46+
test(res, [], '');
6447
break;
6548
case 10:
66-
assert.throws(common.mustCall(() => {
67-
res.writeHead('this is not valid');
68-
}), createErrorMessage('this is not valid'));
49+
test(res, 'this is not valid', 'this is not valid');
6950
break;
7051
case 11:
71-
assert.throws(common.mustCall(() => {
72-
res.writeHead('404 this is not valid either');
73-
}), createErrorMessage('404 this is not valid either'));
52+
test(res, '404 this is not valid either', '404 this is not valid either');
7453
break;
7554
case 12:
76-
assert.throws(common.mustCall(() => {
77-
res.writeHead();
78-
}), createErrorMessage(undefined));
55+
assert.throws(() => { res.writeHead(); },
56+
/^RangeError: Invalid status code: undefined$/);
7957
this.close();
8058
break;
8159
default:

0 commit comments

Comments
 (0)