summaryrefslogtreecommitdiff
path: root/test/parallel/test-http-set-header-chain.js
blob: aa9519129a912353a5630c979c63945708cd7994 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
'use strict';
const common = require('../common');
const http = require('http');
const assert = require('assert');
const expected = {
  '__proto__': null,
  'testheader1': 'foo',
  'testheader2': 'bar',
  'testheader3': 'xyz'
};
const server = http.createServer(common.mustCall((req, res) => {
  let retval = res.setHeader('testheader1', 'foo');

  // Test that the setHeader returns the same response object.
  assert.strictEqual(retval, res);

  retval = res.setHeader('testheader2', 'bar').setHeader('testheader3', 'xyz');
  // Test that chaining works for setHeader.
  assert.deepStrictEqual(res.getHeaders(), expected);
  res.end('ok');
}));
server.listen(0, () => {
  http.get({ port: server.address().port }, common.mustCall((res) => {
    res.on('data', () => {});
    res.on('end', common.mustCall(() => {
      server.close();
    }));
  }));
});