'use strict'; const common = require('../common'); const assert = require('assert'); const http = require('http'); const server = http.createServer(common.mustCall((req, res) => { res.setHeader('X-Date', 'foo'); res.setHeader('X-Connection', 'bar'); res.setHeader('X-Content-Length', 'baz'); res.end(); })); server.listen(0); server.on('listening', common.mustCall(() => { const agent = new http.Agent({ port: server.address().port, maxSockets: 1 }); http.get({ port: server.address().port, path: '/hello', agent: agent }, common.mustCall((res) => { assert.strictEqual(res.statusCode, 200); assert.strictEqual(res.headers['x-date'], 'foo'); assert.strictEqual(res.headers['x-connection'], 'bar'); assert.strictEqual(res.headers['x-content-length'], 'baz'); assert(res.headers['date']); assert.strictEqual(res.headers['connection'], 'keep-alive'); assert.strictEqual(res.headers['content-length'], '0'); server.close(); agent.destroy(); })); }));