summaryrefslogtreecommitdiff
path: root/tests/node_compat/test/parallel/test-http-outgoing-internal-headers.js
blob: ac07a197ab0eb1e94e541fe46c6a98d9b694f782 (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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
// deno-fmt-ignore-file
// deno-lint-ignore-file

// Copyright Joyent and Node contributors. All rights reserved. MIT license.
// Taken from Node 18.12.1
// This file is automatically generated by `tests/node_compat/runner/setup.ts`. Do not modify this file manually.

// Flags: --expose-internals
'use strict';
const common = require('../common');
const assert = require('assert');

const { kOutHeaders } = require('internal/http');
const { OutgoingMessage } = require('http');

const warn = 'OutgoingMessage.prototype._headers is deprecated';
common.expectWarning('DeprecationWarning', warn, 'DEP0066');

{
  // Tests for _headers get method
  const outgoingMessage = new OutgoingMessage();
  outgoingMessage.getHeaders = common.mustCall();
  outgoingMessage._headers; // eslint-disable-line no-unused-expressions
}

{
  // Tests for _headers set method
  const outgoingMessage = new OutgoingMessage();
  outgoingMessage._headers = {
    host: 'risingstack.com',
    Origin: 'localhost'
  };

  assert.deepStrictEqual(
    Object.entries(outgoingMessage[kOutHeaders]),
    Object.entries({
      host: ['host', 'risingstack.com'],
      origin: ['Origin', 'localhost']
    }));
}

{
  // Tests for _headers set method `null`
  const outgoingMessage = new OutgoingMessage();
  outgoingMessage._headers = null;

  assert.strictEqual(
    outgoingMessage[kOutHeaders],
    null
  );
}