diff options
Diffstat (limited to 'test/invalid-headers.js')
-rw-r--r-- | test/invalid-headers.js | 108 |
1 files changed, 108 insertions, 0 deletions
diff --git a/test/invalid-headers.js b/test/invalid-headers.js new file mode 100644 index 0000000..caf9e0a --- /dev/null +++ b/test/invalid-headers.js @@ -0,0 +1,108 @@ +'use strict' + +const { test } = require('tap') +const { Client, errors } = require('..') + +test('invalid headers', (t) => { + t.plan(10) + + const client = new Client('http://localhost:3000') + t.teardown(client.destroy.bind(client)) + client.request({ + path: '/', + method: 'GET', + headers: { + 'content-length': 'asd' + } + }, (err, data) => { + t.type(err, errors.InvalidArgumentError) + }) + + client.request({ + path: '/', + method: 'GET', + headers: 1 + }, (err, data) => { + t.type(err, errors.InvalidArgumentError) + }) + + client.request({ + path: '/', + method: 'GET', + headers: { + 'transfer-encoding': 'chunked' + } + }, (err, data) => { + t.type(err, errors.InvalidArgumentError) + }) + + client.request({ + path: '/', + method: 'GET', + headers: { + upgrade: 'asd' + } + }, (err, data) => { + t.type(err, errors.InvalidArgumentError) + }) + + client.request({ + path: '/', + method: 'GET', + headers: { + connection: 'asd' + } + }, (err, data) => { + t.type(err, errors.InvalidArgumentError) + }) + + client.request({ + path: '/', + method: 'GET', + headers: { + 'keep-alive': 'timeout=5' + } + }, (err, data) => { + t.type(err, errors.InvalidArgumentError) + }) + + client.request({ + path: '/', + method: 'GET', + headers: { + foo: {} + } + }, (err, data) => { + t.type(err, errors.InvalidArgumentError) + }) + + client.request({ + path: '/', + method: 'GET', + headers: { + expect: '100-continue' + } + }, (err, data) => { + t.type(err, errors.NotSupportedError) + }) + + client.request({ + path: '/', + method: 'GET', + headers: { + Expect: '100-continue' + } + }, (err, data) => { + t.type(err, errors.NotSupportedError) + }) + + client.request({ + path: '/', + method: 'GET', + headers: { + expect: 'asd' + } + }, (err, data) => { + t.type(err, errors.NotSupportedError) + }) +}) |