test: refactor parallel/test-tls-delayed-attach

test: refactor parallel/test-tls-delayed-attach

Added description to the test, replace function with arrow function and
implemented common.mustCall

PR-URL: https://github.com/nodejs/node/pull/19421
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
This commit is contained in:
juggernaut451 2018-03-18 01:08:36 +05:30 committed by Ruben Bridgewater
parent 49fd9c63d2
commit e048b15523
No known key found for this signature in database
GPG Key ID: F07496B3EB3C1762

View File

@ -24,6 +24,12 @@ const common = require('../common');
if (!common.hasCrypto) if (!common.hasCrypto)
common.skip('missing crypto'); common.skip('missing crypto');
// This test tries to confirm that a TLS Socket will work as expected even if it
// is created after the original socket has received some data.
//
// Ref: https://github.com/nodejs/node-v0.x-archive/issues/6940
// Ref: https://github.com/nodejs/node-v0.x-archive/pull/6950
const fixtures = require('../common/fixtures'); const fixtures = require('../common/fixtures');
const assert = require('assert'); const assert = require('assert');
const tls = require('tls'); const tls = require('tls');
@ -37,30 +43,30 @@ const options = {
cert: fixtures.readKey('agent1-cert.pem') cert: fixtures.readKey('agent1-cert.pem')
}; };
const server = net.createServer(function(c) { const server = net.createServer(common.mustCall((c) => {
setTimeout(function() { setTimeout(function() {
const s = new tls.TLSSocket(c, { const s = new tls.TLSSocket(c, {
isServer: true, isServer: true,
secureContext: tls.createSecureContext(options) secureContext: tls.createSecureContext(options)
}); });
s.on('data', function(chunk) { s.on('data', (chunk) => {
received += chunk; received += chunk;
}); });
s.on('end', function() { s.on('end', common.mustCall(() => {
server.close(); server.close();
s.destroy(); s.destroy();
}); }));
}, 200); }, 200);
}).listen(0, function() { })).listen(0, common.mustCall(() => {
const c = tls.connect(this.address().port, { const c = tls.connect(server.address().port, {
rejectUnauthorized: false rejectUnauthorized: false
}, function() { }, () => {
c.end(sent); c.end(sent);
}); });
}); }));
process.on('exit', function() { process.on('exit', () => {
assert.strictEqual(received, sent); assert.strictEqual(received, sent);
}); });