node/test/parallel/test-http-write-head.js
cjihrig 2c33819370 test: fix tests that check error messages
20285ad177 changed the format
of error messages throughout lib. However, the tests were not
updated to reflect these changes. This commit makes those
changes.

PR-URL: https://github.com/nodejs/node/pull/3727
Reviewed-By: Roman Reiss <me@silverwind.io>
Reviewed-By: Johan Bergström <bugs@bergstroem.nu>
Reviewed-By: James M Snell <jasnell@gmail.com>
2015-11-10 07:12:33 +01:00

49 lines
1.2 KiB
JavaScript

'use strict';
var common = require('../common');
var assert = require('assert');
var http = require('http');
// Verify that ServerResponse.writeHead() works as setHeader.
// Issue 5036 on github.
var s = http.createServer(function(req, res) {
res.setHeader('test', '1');
// toLowerCase() is used on the name argument, so it must be a string.
var threw = false;
try {
res.setHeader(0xf00, 'bar');
} catch (e) {
assert.ok(e instanceof TypeError);
threw = true;
}
assert.ok(threw, 'Non-string names should throw');
// undefined value should throw, via 979d0ca8
threw = false;
try {
res.setHeader('foo', undefined);
} catch (e) {
assert.ok(e instanceof Error);
assert.equal(e.message, '"value" required in setHeader("foo", value)');
threw = true;
}
assert.ok(threw, 'Undefined value should throw');
res.writeHead(200, { Test: '2' });
res.end();
});
s.listen(common.PORT, runTest);
function runTest() {
http.get({ port: common.PORT }, function(response) {
response.on('end', function() {
assert.equal(response.headers['test'], '2');
assert(response.rawHeaders.indexOf('Test') !== -1);
s.close();
});
response.resume();
});
}