From 58f7f4030f4b506f4b9dfb9c97d3ff73e5d81f9c Mon Sep 17 00:00:00 2001 From: Rich Trott Date: Wed, 22 Nov 2017 12:47:50 -0800 Subject: [PATCH 1/2] doc,test: remove unnecessary await with return instances Remove unnecessary `await` in combination with `return` in preparation for enabling lint rule. --- doc/api/util.md | 2 +- test/common/inspector-helper.js | 2 +- test/parallel/test-util-callbackify.js | 10 +++++----- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/doc/api/util.md b/doc/api/util.md index 6ec2f391be9af4..8c73242a5e6dab 100644 --- a/doc/api/util.md +++ b/doc/api/util.md @@ -31,7 +31,7 @@ For example: const util = require('util'); async function fn() { - return await Promise.resolve('hello world'); + return 'hello world'; } const callbackFunction = util.callbackify(fn); diff --git a/test/common/inspector-helper.js b/test/common/inspector-helper.js index 81aa046bf3d94d..454eef4c5e26da 100644 --- a/test/common/inspector-helper.js +++ b/test/common/inspector-helper.js @@ -390,7 +390,7 @@ class NodeInstance { console.log('[test]', 'Connecting to a child Node process'); const response = await this.httpGet(null, '/json/list'); const url = response[0]['webSocketDebuggerUrl']; - return await this.wsHandshake(url); + return this.wsHandshake(url); } expectShutdown() { diff --git a/test/parallel/test-util-callbackify.js b/test/parallel/test-util-callbackify.js index 0999fc4fd39f07..84b439e43f0702 100644 --- a/test/parallel/test-util-callbackify.js +++ b/test/parallel/test-util-callbackify.js @@ -28,7 +28,7 @@ const values = [ for (const value of values) { // Test and `async function` async function asyncFn() { - return await Promise.resolve(value); + return value; } const cbAsyncFn = callbackify(asyncFn); @@ -70,7 +70,7 @@ const values = [ for (const value of values) { // Test an `async function` async function asyncFn() { - return await Promise.reject(value); + return Promise.reject(value); } const cbAsyncFn = callbackify(asyncFn); @@ -142,7 +142,7 @@ const values = [ for (const value of values) { async function asyncFn(arg) { assert.strictEqual(arg, value); - return await Promise.resolve(arg); + return arg; } const cbAsyncFn = callbackify(asyncFn); @@ -183,7 +183,7 @@ const values = [ const iAmThat = { async fn(arg) { assert.strictEqual(this, iAmThat); - return await Promise.resolve(arg); + return arg; }, }; iAmThat.cbFn = callbackify(iAmThat.fn); @@ -241,7 +241,7 @@ const values = [ { async function asyncFn() { - return await Promise.resolve(42); + return 42; } const cb = callbackify(asyncFn); From 6ff73200cd95f40d8cc7bc2e7c4b40dbb35b3be4 Mon Sep 17 00:00:00 2001 From: Rich Trott Date: Wed, 22 Nov 2017 12:49:05 -0800 Subject: [PATCH 2/2] tools: enable no-return-await lint rule Enable lint rule that prohibits unnecessary use of `await` with `return`. --- .eslintrc.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/.eslintrc.yaml b/.eslintrc.yaml index 0f46a7fbfa77c7..da49eb8b4f7c82 100644 --- a/.eslintrc.yaml +++ b/.eslintrc.yaml @@ -69,6 +69,7 @@ rules: message: __defineGetter__ is deprecated. - property: __defineSetter__ message: __defineSetter__ is deprecated. + no-return-await: error no-self-assign: error no-throw-literal: error no-unused-labels: error