summaryrefslogtreecommitdiffstats
path: root/test/websocket/custom-headers.js
blob: 01f1830d3e961cac8d61283e8b93436eb8284f4c (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
'use strict'

const { test } = require('tap')
const assert = require('assert')
const { Agent, WebSocket } = require('../..')

test('Setting custom headers', (t) => {
  t.plan(1)

  const headers = {
    'x-khafra-hello': 'hi',
    Authorization: 'Bearer base64orsomethingitreallydoesntmatter'
  }

  class TestAgent extends Agent {
    dispatch (options) {
      t.match(options.headers, headers)

      return false
    }
  }

  const ws = new WebSocket('wss://echo.websocket.events', {
    headers,
    dispatcher: new TestAgent()
  })

  // We don't want to make a request, just ensure the headers are set.
  ws.onclose = ws.onerror = ws.onmessage = assert.fail
})