Skip to content

Commit

Permalink
test: add test case to test-http-response-statuscode.js
Browse files Browse the repository at this point in the history
Change regular expression of error message.
Add test case(`res.writeHead()`).

PR-URL: #10808
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
  • Loading branch information
hiroppy authored and jasnell committed Mar 8, 2017
1 parent c2dc381 commit 1bbb611
Showing 1 changed file with 23 additions and 14 deletions.
37 changes: 23 additions & 14 deletions test/parallel/test-http-response-statuscode.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,70 +3,79 @@ const common = require('../common');
const assert = require('assert');
const http = require('http');

const MAX_REQUESTS = 12;
var reqNum = 0;
const MAX_REQUESTS = 13;
let reqNum = 0;

const createErrorMessage = (code) => {
return new RegExp(`^RangeError: Invalid status code: ${code}$`);
};

const server = http.Server(common.mustCall(function(req, res) {
switch (reqNum) {
case 0:
assert.throws(common.mustCall(() => {
res.writeHead(-1);
}), /invalid status code/i);
}), createErrorMessage(-1));
break;
case 1:
assert.throws(common.mustCall(() => {
res.writeHead(Infinity);
}), /invalid status code/i);
}), createErrorMessage(0));
break;
case 2:
assert.throws(common.mustCall(() => {
res.writeHead(NaN);
}), /invalid status code/i);
}), createErrorMessage(0));
break;
case 3:
assert.throws(common.mustCall(() => {
res.writeHead({});
}), /invalid status code/i);
}), createErrorMessage(0));
break;
case 4:
assert.throws(common.mustCall(() => {
res.writeHead(99);
}), /invalid status code/i);
}), createErrorMessage(99));
break;
case 5:
assert.throws(common.mustCall(() => {
res.writeHead(1000);
}), /invalid status code/i);
}), createErrorMessage(1000));
break;
case 6:
assert.throws(common.mustCall(() => {
res.writeHead('1000');
}), /invalid status code/i);
}), createErrorMessage(1000));
break;
case 7:
assert.throws(common.mustCall(() => {
res.writeHead(null);
}), /invalid status code/i);
}), createErrorMessage(0));
break;
case 8:
assert.throws(common.mustCall(() => {
res.writeHead(true);
}), /invalid status code/i);
}), createErrorMessage(1));
break;
case 9:
assert.throws(common.mustCall(() => {
res.writeHead([]);
}), /invalid status code/i);
}), createErrorMessage(0));
break;
case 10:
assert.throws(common.mustCall(() => {
res.writeHead('this is not valid');
}), /invalid status code/i);
}), createErrorMessage(0));
break;
case 11:
assert.throws(common.mustCall(() => {
res.writeHead('404 this is not valid either');
}), /invalid status code/i);
}), createErrorMessage(0));
break;
case 12:
assert.throws(common.mustCall(() => {
res.writeHead();
}), createErrorMessage(0));
this.close();
break;
default:
Expand Down

0 comments on commit 1bbb611

Please sign in to comment.