From 4bd7e37778572420bbdf33e3e5090b18ff4a95f2 Mon Sep 17 00:00:00 2001 From: Will Binns-Smith Date: Tue, 11 Jul 2017 20:19:38 -0700 Subject: [PATCH] Only use babel-eslint when necessary for tests --- tests/lib/rules/no-unused-state.js | 44 ++++++++++++++++++------------ 1 file changed, 27 insertions(+), 17 deletions(-) diff --git a/tests/lib/rules/no-unused-state.js b/tests/lib/rules/no-unused-state.js index 6465950c12..a4bf1d8761 100644 --- a/tests/lib/rules/no-unused-state.js +++ b/tests/lib/rules/no-unused-state.js @@ -10,14 +10,12 @@ const RuleTester = require('eslint').RuleTester; const parserOptions = { ecmaVersion: 6, ecmaFeatures: { - jsx: true + jsx: true, + experimentalObjectRestSpread: true } }; -const eslintTester = new RuleTester({ - parserOptions: parserOptions, - parser: 'babel-eslint' -}); +const eslintTester = new RuleTester({parserOptions}); function getErrorMessages(unusedFields) { return unusedFields.map(function(field) { @@ -98,12 +96,15 @@ eslintTester.run('no-unused-state', rule, { return ; } }`, - `class ClassPropertyStateTest extends React.Component { - state = { foo: 0 }; - render() { - return ; - } - }`, + { + code: `class ClassPropertyStateTest extends React.Component { + state = { foo: 0 }; + render() { + return ; + } + }`, + parser: 'babel-eslint' + }, `class VariableDeclarationTest extends React.Component { constructor() { this.state = { foo: 0 }; @@ -180,13 +181,16 @@ eslintTester.run('no-unused-state', rule, { return ; } }`, - `class DeepDestructuringTest extends React.Component { + { + code: `class DeepDestructuringTest extends React.Component { state = { foo: 0, bar: 0 }; render() { const {state: {foo, ...others}} = this; return ; } }`, + parser: 'babel-eslint' + }, // A cleverer analysis might recognize that the following should be errors, // but they're out of scope for this lint rule. `class MethodArgFalseNegativeTest extends React.Component { @@ -257,14 +261,17 @@ eslintTester.run('no-unused-state', rule, { return ; } }`, - `class TypeCastExpressionSpreadFalseNegativeTest extends React.Component { + { + code: `class TypeCastExpressionSpreadFalseNegativeTest extends React.Component { constructor() { this.state = { foo: 0 }; } render() { return ; } - }` + }`, + parser: 'babel-eslint' + } ], invalid: [ @@ -330,7 +337,8 @@ eslintTester.run('no-unused-state', rule, { return ; } }`, - errors: getErrorMessages(['foo']) + errors: getErrorMessages(['foo']), + parser: 'babel-eslint' }, { code: `class UnusedStateWhenPropsAreSpreadTest extends React.Component { @@ -422,7 +430,8 @@ eslintTester.run('no-unused-state', rule, { return ; } }`, - errors: getErrorMessages(['qux']) + errors: getErrorMessages(['qux']), + parser: 'babel-eslint' }, { code: `class UnusedDeepDestructuringTest extends React.Component { @@ -432,7 +441,8 @@ eslintTester.run('no-unused-state', rule, { return ; } }`, - errors: getErrorMessages(['bar']) + errors: getErrorMessages(['bar']), + parser: 'babel-eslint' } ] });