From f7496896c4ea088cbd5e4ed29eeecca655e1ac0b Mon Sep 17 00:00:00 2001 From: Ruben Bridgewater Date: Mon, 9 Apr 2018 00:12:48 +0200 Subject: tools: add eslintrc rule for `assert.rejects` MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This makes sure `assert.rejects` is always called with a second argument. Besides that it is also changes a eslint error message to suggest objects instead of a regular expression. PR-URL: https://github.com/nodejs/node/pull/19885 Reviewed-By: Matteo Collina Reviewed-By: Michaƫl Zasso Reviewed-By: James M Snell Reviewed-By: Trivikram Kamat --- .eslintrc.js | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to '.eslintrc.js') diff --git a/.eslintrc.js b/.eslintrc.js index 2eb3eae6a8..53d0b39d0a 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -155,9 +155,13 @@ module.exports = { selector: "CallExpression[callee.object.name='assert'][callee.property.name='doesNotThrow']", message: "Please replace `assert.doesNotThrow()` and add a comment next to the code instead." }, + { + selector: `CallExpression[callee.object.name='assert'][callee.property.name='rejects'][arguments.length<2]`, + message: 'assert.rejects() must be invoked with at least two arguments.', + }, { selector: `CallExpression[callee.object.name='assert'][callee.property.name='throws'][arguments.1.type='Literal']:not([arguments.1.regex])`, - message: 'use a regular expression for second argument of assert.throws()', + message: 'Use an object as second argument of assert.throws()', }, { selector: `CallExpression[callee.object.name='assert'][callee.property.name='throws'][arguments.length<2]`, -- cgit v1.2.3