From d9dabd2197f7f16e32af57d60b07f19457c30f3b Mon Sep 17 00:00:00 2001 From: Sakthipriyan Vairamani Date: Mon, 28 Sep 2015 11:34:39 +0530 Subject: [PATCH] test: check options to create{Server,SecureContext} Introduce a new test to validate the options being passed to `createServer` and `createSecureContext`. PR-URL: https://github.com/nodejs/node/pull/3100 --- test/parallel/test-tls-basic-validations.js | 35 +++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 test/parallel/test-tls-basic-validations.js diff --git a/test/parallel/test-tls-basic-validations.js b/test/parallel/test-tls-basic-validations.js new file mode 100644 index 00000000000000..a741f3b49c47ac --- /dev/null +++ b/test/parallel/test-tls-basic-validations.js @@ -0,0 +1,35 @@ +'use strict'; + +require('../common'); +const assert = require('assert'); +const tls = require('tls'); + +assert.throws(() => tls.createSecureContext({ciphers: 1}), + /TypeError: Ciphers must be a string/); + +assert.throws(() => tls.createServer({ciphers: 1}), + /TypeError: Ciphers must be a string/); + +assert.throws(() => tls.createSecureContext({key: 'dummykey', passphrase: 1}), + /TypeError: Pass phrase must be a string/); + +assert.throws(() => tls.createServer({key: 'dummykey', passphrase: 1}), + /TypeError: Pass phrase must be a string/); + +assert.throws(() => tls.createServer({ecdhCurve: 1}), + /TypeError: ECDH curve name must be a string/); + +assert.throws(() => tls.createServer({handshakeTimeout: 'abcd'}), + /TypeError: handshakeTimeout must be a number/); + +assert.throws(() => tls.createServer({sessionTimeout: 'abcd'}), + /TypeError: Session timeout must be a 32-bit integer/); + +assert.throws(() => tls.createServer({ticketKeys: 'abcd'}), + /TypeError: Ticket keys must be a buffer/); + +assert.throws(() => tls.createServer({ticketKeys: new Buffer(0)}), + /TypeError: Ticket keys length must be 48 bytes/); + +assert.throws(() => tls.createSecurePair({}), + /Error: First argument must be a tls module SecureContext/);