summaryrefslogtreecommitdiff
path: root/test/sequential
diff options
context:
space:
mode:
authorVse Mozhet Byt <vsemozhetbyt@gmail.com>2017-06-18 16:22:32 +0300
committerVse Mozhet Byt <vsemozhetbyt@gmail.com>2017-06-21 03:40:27 +0300
commit76340e3f1007998c7cb9d69fa1a42d42663ca6c2 (patch)
tree9df1452725a049e20884a918d698f9abe72c7e2b /test/sequential
parent330349f706a1f21234eee9b9d75d7c1e953ad1f0 (diff)
downloadandroid-node-v8-76340e3f1007998c7cb9d69fa1a42d42663ca6c2.tar.gz
android-node-v8-76340e3f1007998c7cb9d69fa1a42d42663ca6c2.tar.bz2
android-node-v8-76340e3f1007998c7cb9d69fa1a42d42663ca6c2.zip
test: fix RegExp nits
* 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>
Diffstat (limited to 'test/sequential')
-rw-r--r--test/sequential/test-module-loading.js8
-rw-r--r--test/sequential/test-process-warnings.js8
-rw-r--r--test/sequential/test-regress-GH-784.js18
3 files changed, 20 insertions, 14 deletions
diff --git a/test/sequential/test-module-loading.js b/test/sequential/test-module-loading.js
index c55c03279e..8a7bfe15c4 100644
--- a/test/sequential/test-module-loading.js
+++ b/test/sequential/test-module-loading.js
@@ -25,6 +25,8 @@ const assert = require('assert');
const path = require('path');
const fs = require('fs');
+const backslash = /\\/g;
+
console.error('load test-module-loading.js');
// assert that this is the main module.
@@ -195,7 +197,7 @@ try {
require(`${loadOrder}file3`);
} catch (e) {
// Not a real .node module, but we know we require'd the right thing.
- assert.ok(e.message.replace(/\\/g, '/').match(/file3\.node/));
+ assert.ok(/file3\.node/.test(e.message.replace(backslash, '/')));
}
assert.strictEqual(require(`${loadOrder}file4`).file4, 'file4.reg', msg);
assert.strictEqual(require(`${loadOrder}file5`).file5, 'file5.reg2', msg);
@@ -203,7 +205,7 @@ try {
try {
require(`${loadOrder}file7`);
} catch (e) {
- assert.ok(e.message.replace(/\\/g, '/').match(/file7\/index\.node/));
+ assert.ok(/file7\/index\.node/.test(e.message.replace(backslash, '/')));
}
assert.strictEqual(require(`${loadOrder}file8`).file8, 'file8/index.reg',
msg);
@@ -237,7 +239,7 @@ try {
const children = module.children.reduce(function red(set, child) {
let id = path.relative(path.dirname(__dirname), child.id);
- id = id.replace(/\\/g, '/');
+ id = id.replace(backslash, '/');
set[id] = child.children.reduce(red, {});
return set;
}, {});
diff --git a/test/sequential/test-process-warnings.js b/test/sequential/test-process-warnings.js
index 0ab8652f56..944029d8b3 100644
--- a/test/sequential/test-process-warnings.js
+++ b/test/sequential/test-process-warnings.js
@@ -10,24 +10,26 @@ const normal = [warnmod];
const noWarn = ['--no-warnings', warnmod];
const traceWarn = ['--trace-warnings', warnmod];
+const warningMessage = /^\(.+\)\sWarning: a bad practice warning/;
+
execFile(node, normal, function(er, stdout, stderr) {
// Show Process Warnings
assert.strictEqual(er, null);
assert.strictEqual(stdout, '');
- assert(/^\(.+\)\sWarning: a bad practice warning/.test(stderr));
+ assert(warningMessage.test(stderr));
});
execFile(node, noWarn, function(er, stdout, stderr) {
// Hide Process Warnings
assert.strictEqual(er, null);
assert.strictEqual(stdout, '');
- assert(!/^\(.+\)\sWarning: a bad practice warning/.test(stderr));
+ assert(!warningMessage.test(stderr));
});
execFile(node, traceWarn, function(er, stdout, stderr) {
// Show Warning Trace
assert.strictEqual(er, null);
assert.strictEqual(stdout, '');
- assert(/^\(.+\)\sWarning: a bad practice warning/.test(stderr));
+ assert(warningMessage.test(stderr));
assert(/at Object\.<anonymous>\s\(.+warnings\.js:3:9\)/.test(stderr));
});
diff --git a/test/sequential/test-regress-GH-784.js b/test/sequential/test-regress-GH-784.js
index 7abc622dbe..127d921626 100644
--- a/test/sequential/test-regress-GH-784.js
+++ b/test/sequential/test-regress-GH-784.js
@@ -70,28 +70,30 @@ const responses = [];
function afterPing(result) {
responses.push(result);
console.error(`afterPing. responses.length = ${responses.length}`);
+ const ECONNREFUSED_RE = /ECONNREFUSED/;
+ const successRE = /success/;
switch (responses.length) {
case 2:
- assert.ok(/ECONNREFUSED/.test(responses[0]));
- assert.ok(/ECONNREFUSED/.test(responses[1]));
+ assert.ok(ECONNREFUSED_RE.test(responses[0]));
+ assert.ok(ECONNREFUSED_RE.test(responses[1]));
serverOn();
break;
case 4:
- assert.ok(/success/.test(responses[2]));
- assert.ok(/success/.test(responses[3]));
+ assert.ok(successRE.test(responses[2]));
+ assert.ok(successRE.test(responses[3]));
serverOff();
break;
case 6:
- assert.ok(/ECONNREFUSED/.test(responses[4]));
- assert.ok(/ECONNREFUSED/.test(responses[5]));
+ assert.ok(ECONNREFUSED_RE.test(responses[4]));
+ assert.ok(ECONNREFUSED_RE.test(responses[5]));
serverOn();
break;
case 8:
- assert.ok(/success/.test(responses[6]));
- assert.ok(/success/.test(responses[7]));
+ assert.ok(successRE.test(responses[6]));
+ assert.ok(successRE.test(responses[7]));
server.close();
// we should go to process.on('exit') from here.
break;