From 4faaed69fa372f9a5daf11ef127c3ad2c8c9e93c Mon Sep 17 00:00:00 2001 From: Rich Trott Date: Sun, 17 Apr 2016 23:41:59 -0700 Subject: [PATCH] test,tools: enable linting for undefined vars The test directory had linting for undefined variables disabled. It is enabled everywhere else in the code base. Let's disable the fule for individual lines in the handful of tests that use undefined variables. PR-URL: https://github.com/nodejs/node/pull/6255 Reviewed-By: Santiago Gimeno Reviewed-By: Colin Ihrig Reviewed-By: James M Snell Reviewed-By: Roman Reiss --- test/.eslintrc | 2 -- test/message/nexttick_throw.js | 1 + test/message/timeout_throw.js | 1 + .../parallel/test-domain-exit-dispose-again.js | 2 +- test/parallel/test-domain-exit-dispose.js | 2 +- test/parallel/test-exception-handler2.js | 18 +++++------------- test/parallel/test-global.js | 6 ++++-- test/parallel/test-http-exceptions.js | 2 +- test/parallel/test-listen-fd-cluster.js | 1 - test/parallel/test-next-tick-errors.js | 2 +- test/parallel/test-regress-GH-2245.js | 4 ++-- ...est-timers-reset-process-domain-on-throw.js | 2 +- test/parallel/test-util-inspect.js | 2 +- 13 files changed, 19 insertions(+), 26 deletions(-) diff --git a/test/.eslintrc b/test/.eslintrc index 68b358740f5..172c0bfb9d0 100644 --- a/test/.eslintrc +++ b/test/.eslintrc @@ -1,8 +1,6 @@ ## Test-specific linter rules rules: - ## allow undeclared variables - no-undef: 0 ## common module is mandatory in tests required-modules: [2, "common"] diff --git a/test/message/nexttick_throw.js b/test/message/nexttick_throw.js index 22f61a36f94..49cd6dd0f7c 100644 --- a/test/message/nexttick_throw.js +++ b/test/message/nexttick_throw.js @@ -5,6 +5,7 @@ process.nextTick(function() { process.nextTick(function() { process.nextTick(function() { process.nextTick(function() { + // eslint-disable-next-line undefined_reference_error_maker; }); }); diff --git a/test/message/timeout_throw.js b/test/message/timeout_throw.js index 5c345ac8c0c..14291fabd12 100644 --- a/test/message/timeout_throw.js +++ b/test/message/timeout_throw.js @@ -2,5 +2,6 @@ require('../common'); setTimeout(function() { + // eslint-disable-next-line no-undef undefined_reference_error_maker; }); diff --git a/test/parallel/test-domain-exit-dispose-again.js b/test/parallel/test-domain-exit-dispose-again.js index e5b1affc0af..7360e794122 100644 --- a/test/parallel/test-domain-exit-dispose-again.js +++ b/test/parallel/test-domain-exit-dispose-again.js @@ -56,7 +56,7 @@ setTimeout(function firstTimer() { // Make V8 throw an unreferenced error. As a result, the domain's error // handler is called, which disposes the domain "d" and should prevent the // nested timer that is attached to it from running. - err3(); + err3(); // eslint-disable-line no-undef }); }, TIMEOUT_DURATION); diff --git a/test/parallel/test-domain-exit-dispose.js b/test/parallel/test-domain-exit-dispose.js index 2bddb01cbd8..94b3dbd4ca5 100644 --- a/test/parallel/test-domain-exit-dispose.js +++ b/test/parallel/test-domain-exit-dispose.js @@ -29,7 +29,7 @@ function err() { }); // this function doesn't exist, and throws an error as a result. - err3(); + err3(); // eslint-disable-line no-undef } function handle(e) { diff --git a/test/parallel/test-exception-handler2.js b/test/parallel/test-exception-handler2.js index 3ed2c952046..1dabedf4c68 100644 --- a/test/parallel/test-exception-handler2.js +++ b/test/parallel/test-exception-handler2.js @@ -1,22 +1,14 @@ 'use strict'; -require('../common'); -var assert = require('assert'); +const common = require('../common'); process.on('uncaughtException', function(err) { console.log('Caught exception: ' + err); }); -var timeoutFired = false; -setTimeout(function() { +setTimeout(common.mustCall(function() { console.log('This will still run.'); - timeoutFired = true; -}, 500); - -process.on('exit', function() { - assert.ok(timeoutFired); -}); +}), 50); // Intentionally cause an exception, but don't catch it. -nonexistentFunc(); -console.log('This will not run.'); - +nonexistentFunc(); // eslint-disable-line no-undef +common.fail('This will not run.'); diff --git a/test/parallel/test-global.js b/test/parallel/test-global.js index 4eeecf36e0a..c8135ed89fa 100644 --- a/test/parallel/test-global.js +++ b/test/parallel/test-global.js @@ -4,12 +4,14 @@ var assert = require('assert'); common.globalCheck = false; -baseFoo = 'foo'; +baseFoo = 'foo'; // eslint-disable-line no-undef global.baseBar = 'bar'; assert.equal('foo', global.baseFoo, 'x -> global.x in base level not working'); -assert.equal('bar', baseBar, 'global.x -> x in base level not working'); +assert.equal('bar', + baseBar, // eslint-disable-line no-undef + 'global.x -> x in base level not working'); var module = require('../fixtures/global/plain'); const fooBar = module.fooBar; diff --git a/test/parallel/test-http-exceptions.js b/test/parallel/test-http-exceptions.js index 922dc209571..b01d31e030b 100644 --- a/test/parallel/test-http-exceptions.js +++ b/test/parallel/test-http-exceptions.js @@ -3,7 +3,7 @@ var common = require('../common'); var http = require('http'); var server = http.createServer(function(req, res) { - intentionally_not_defined(); + intentionally_not_defined(); // eslint-disable-line no-undef res.writeHead(200, {'Content-Type': 'text/plain'}); res.write('Thank you, come again.'); res.end(); diff --git a/test/parallel/test-listen-fd-cluster.js b/test/parallel/test-listen-fd-cluster.js index c321f699d7a..419efc7c099 100644 --- a/test/parallel/test-listen-fd-cluster.js +++ b/test/parallel/test-listen-fd-cluster.js @@ -21,7 +21,6 @@ if (common.isWindows) { switch (process.argv[2]) { case 'master': return master(); case 'worker': return worker(); - case 'parent': return parent(); } var ok; diff --git a/test/parallel/test-next-tick-errors.js b/test/parallel/test-next-tick-errors.js index 074bdc0f9f2..1fe78269384 100644 --- a/test/parallel/test-next-tick-errors.js +++ b/test/parallel/test-next-tick-errors.js @@ -10,7 +10,7 @@ let exceptionHandled = false; process.nextTick(function() { order.push('A'); // cause an error - what(); + what(); // eslint-disable-line no-undef }); // This nextTick function should remain in the queue when the first one diff --git a/test/parallel/test-regress-GH-2245.js b/test/parallel/test-regress-GH-2245.js index a7f54caa5fd..1ee26983ae3 100644 --- a/test/parallel/test-regress-GH-2245.js +++ b/test/parallel/test-regress-GH-2245.js @@ -3,7 +3,7 @@ require('../common'); var assert = require('assert'); /* -in node 0.10 a bug existed that caused strict functions to not capture +In Node.js 0.10, a bug existed that caused strict functions to not capture their environment when evaluated. When run in 0.10 `test()` fails with a `ReferenceError`. See https://github.com/nodejs/node/issues/2245 for details. */ @@ -21,7 +21,7 @@ function test() { eval(code); - return bar(); + return bar(); // eslint-disable-line no-undef } diff --git a/test/parallel/test-timers-reset-process-domain-on-throw.js b/test/parallel/test-timers-reset-process-domain-on-throw.js index f72530b5423..ab3ffd3596e 100644 --- a/test/parallel/test-timers-reset-process-domain-on-throw.js +++ b/test/parallel/test-timers-reset-process-domain-on-throw.js @@ -22,7 +22,7 @@ function err() { function err2() { // this function doesn't exist, and throws an error as a result. - err3(); + err3(); // eslint-disable-line no-undef } function handleDomainError(e) { diff --git a/test/parallel/test-util-inspect.js b/test/parallel/test-util-inspect.js index 115695db6a6..9e713cf16c5 100644 --- a/test/parallel/test-util-inspect.js +++ b/test/parallel/test-util-inspect.js @@ -301,7 +301,7 @@ errors.forEach(function(err) { assert.equal(util.inspect(err), err.stack); }); try { - undef(); + undef(); // eslint-disable-line no-undef } catch (e) { assert.equal(util.inspect(e), e.stack); }