test: add tests for add/remove header after sent

This change adds tests to make sure an Error is thrown if a header
is added or removed after they are sent.

PR-URL: https://github.com/nodejs/node/pull/8682
Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Ilkka Myller <ilkka.myller@nodefield.com>
This commit is contained in:
Niklas Ingholt 2016-09-20 15:22:16 +02:00 committed by Ilkka Myller
parent 5acbeb0272
commit a5994f75dc
2 changed files with 42 additions and 0 deletions

View File

@ -0,0 +1,21 @@
'use strict';
require('../common');
const assert = require('assert');
const http = require('http');
const server = http.createServer((req, res) => {
assert.doesNotThrow(() => {
res.setHeader('header1', 1);
});
res.write('abc');
assert.throws(() => {
res.setHeader('header2', 2);
}, /Can't set headers after they are sent\./);
res.end();
});
server.listen(0, () => {
http.get({port: server.address().port}, () => {
server.close();
});
});

View File

@ -0,0 +1,21 @@
'use strict';
require('../common');
const assert = require('assert');
const http = require('http');
const server = http.createServer((req, res) => {
assert.doesNotThrow(() => {
res.removeHeader('header1', 1);
});
res.write('abc');
assert.throws(() => {
res.removeHeader('header2', 2);
}, /Can't remove headers after they are sent/);
res.end();
});
server.listen(0, () => {
http.get({port: server.address().port}, () => {
server.close();
});
});