diff --git a/packages/eslint-plugin/tests/lib/eslint-rules/arrow-parens.js b/packages/eslint-plugin/tests/lib/eslint-rules/arrow-parens.js new file mode 100644 index 000000000000..e8a77ca2013d --- /dev/null +++ b/packages/eslint-plugin/tests/lib/eslint-rules/arrow-parens.js @@ -0,0 +1,44 @@ +'use strict'; + +//------------------------------------------------------------------------------ +// Requirements +//------------------------------------------------------------------------------ + +const rule = require('eslint/lib/rules/arrow-parens'), + RuleTester = require('eslint').RuleTester; + +const ruleTester = new RuleTester({ + parser: '@typescript-eslint/parser' +}); + +ruleTester.run('arrow-parens', rule, { + valid: [ + // https://github.com/typescript-eslint/typescript-eslint/issues/14 + 'const foo = (t) => {};', + 'const foo = (t) => {};', + 'const foo = (t: T) => {};', + 'const foo = ((t: T) => {});', + 'const foo = function (t: T) {};', + { + code: 'const foo = t => {};', + options: ['as-needed'] + }, + { + code: 'const foo = (t) => {};', + options: ['as-needed'] + }, + { + code: 'const foo = (t: T) => {};', + options: ['as-needed'] + }, + { + code: 'const foo = (t: T) => {};', + options: ['as-needed'] + }, + { + code: 'const foo = (t: T) => ({});', + options: ['as-needed', { requireForBlockBody: true }] + } + ], + invalid: [] +});