mirror of
https://github.com/nodejs/node.git
synced 2025-05-21 06:53:52 +00:00

* Remove needless RegExp flag In fixed case, `/g` flag is needless in the boolean context. * Remove needless RegExp capturing Use non-capturing grouping or remove capturing completely when: * capturing is useless per se, e.g. in test() check; * captured groups are not used afterward at all; * some of the later captured groups are not used afterward. * Use test, not match/exec in boolean context match() and exec() return a complicated object, unneeded in a boolean context. * Do not needlessly repeat RegExp creation This commit takes RegExp creation out of cycles and other repetitions. As long as the RegExp does not use /g flag and match indices, we are safe here. In tests, this fix hardly gives a significant performance gain, but it increases clarity and maintainability, reassuring some RegExps to be identical. RegExp in functions are not taken out of their functions: while these functions are called many times and their RegExps are recreated with each call, the performance gain in test cases does not seem to be worth decreasing function self-dependency. PR-URL: https://github.com/nodejs/node/pull/13770 Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
30 lines
742 B
JavaScript
30 lines
742 B
JavaScript
'use strict';
|
|
const common = require('../common');
|
|
|
|
if (!common.hasCrypto) {
|
|
common.skip('missing crypto');
|
|
return;
|
|
}
|
|
const tls = require('tls');
|
|
const net = require('net');
|
|
const assert = require('assert');
|
|
|
|
const bonkers = Buffer.alloc(1024, 42);
|
|
|
|
|
|
const server = tls.createServer({})
|
|
.listen(0, function() {
|
|
const c = net.connect({ port: this.address().port }, function() {
|
|
c.write(bonkers);
|
|
});
|
|
|
|
}).on('tlsClientError', common.mustCall(function(e) {
|
|
assert.ok(e instanceof Error,
|
|
'Instance of Error should be passed to error handler');
|
|
assert.ok(
|
|
/SSL routines:SSL23_GET_CLIENT_HELLO:unknown protocol/.test(e.message),
|
|
'Expecting SSL unknown protocol');
|
|
|
|
server.close();
|
|
}));
|