diff options
author | Rich Trott <rtrott@gmail.com> | 2021-03-26 09:17:23 +0300 |
---|---|---|
committer | Ruy Adorno <ruyadorno@hotmail.com> | 2021-03-30 03:17:19 +0300 |
commit | b7e738410915ece886b193fef6de9d892cd25645 (patch) | |
tree | 73435efa3ba454773e9577708e76503750412bcc | |
parent | e256c4d11ddace7e53cf146383d2a1234ddd781e (diff) |
tools: improve valid-typeof lint rule
Require that `typeof` comparisons be to string literals.
PR-URL: https://github.com/nodejs/node/pull/37924
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: Michaƫl Zasso <targos@protonmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
-rw-r--r-- | .eslintrc.js | 2 | ||||
-rw-r--r-- | lib/internal/encoding.js | 1 | ||||
-rw-r--r-- | test/parallel/test-assert-calltracker-report.js | 12 |
3 files changed, 5 insertions, 10 deletions
diff --git a/.eslintrc.js b/.eslintrc.js index 7574e1b4b6c..4914b7b6a8f 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -307,7 +307,7 @@ module.exports = { 'template-curly-spacing': 'error', 'unicode-bom': 'error', 'use-isnan': 'error', - 'valid-typeof': 'error', + 'valid-typeof': ['error', { requireStringLiterals: true }], // Custom rules from eslint-plugin-node-core 'node-core/no-unescaped-regexp-dot': 'error', diff --git a/lib/internal/encoding.js b/lib/internal/encoding.js index 560f0daeae7..f6e52238a12 100644 --- a/lib/internal/encoding.js +++ b/lib/internal/encoding.js @@ -64,6 +64,7 @@ function validateDecoder(obj) { } function validateArgument(prop, expected, propName, expectedName) { + // eslint-disable-next-line valid-typeof if (typeof prop !== expected) throw new ERR_INVALID_ARG_TYPE(propName, expectedName, prop); } diff --git a/test/parallel/test-assert-calltracker-report.js b/test/parallel/test-assert-calltracker-report.js index 64b068760ca..87ef0bff17f 100644 --- a/test/parallel/test-assert-calltracker-report.js +++ b/test/parallel/test-assert-calltracker-report.js @@ -11,22 +11,16 @@ function foo() {} const callsfoo = tracker.calls(foo, 1); // Ensures that foo was added to the callChecks array. -if (tracker.report()[0].operator !== 'foo') { - process.exit(1); -} +assert.strictEqual(tracker.report()[0].operator, 'foo'); callsfoo(); // Ensures that foo was removed from the callChecks array after being called the // expected number of times. -if (typeof tracker.report()[0] === 'undefined') { - process.exit(1); -} +assert.strictEqual(typeof tracker.report()[0], 'undefined'); callsfoo(); // Ensures that foo was added back to the callChecks array after being called // more than the expected number of times. -if (tracker.report()[0].operator !== 'foo') { - process.exit(1); -} +assert.strictEqual(tracker.report()[0].operator, 'foo'); |