node/test/parallel/test-tls-regr-gh-5108.js
Vse Mozhet Byt bc99efc973 test: simplify test skipping
* Make common.skip() exit.

  Also add common.printSkipMessage() for partial skips.

* Don't make needless things before skip

PR-URL: https://github.com/nodejs/node/pull/14021
Fixes: https://github.com/nodejs/node/issues/14016
Reviewed-By: Refael Ackermann <refack@gmail.com>
2017-07-19 15:02:06 -04:00

40 lines
839 B
JavaScript

'use strict';
const common = require('../common');
if (!common.hasCrypto)
common.skip('missing crypto');
const assert = require('assert');
const tls = require('tls');
const fs = require('fs');
const options = {
key: fs.readFileSync(`${common.fixturesDir}/keys/agent1-key.pem`),
cert: fs.readFileSync(`${common.fixturesDir}/keys/agent1-cert.pem`)
};
const server = tls.createServer(options, function(s) {
s.end('hello');
}).listen(0, function() {
const opts = {
port: this.address().port,
rejectUnauthorized: false
};
const client = tls.connect(opts, function() {
putImmediate(client);
});
});
function putImmediate(client) {
setImmediate(function() {
if (client.ssl) {
const fd = client.ssl.fd;
assert(!!fd);
putImmediate(client);
} else {
server.close();
}
});
}