Skip to content

Commit

Permalink
Only use babel-eslint when necessary for tests
Browse files Browse the repository at this point in the history
  • Loading branch information
Will Binns-Smith committed Jul 12, 2017
1 parent 38bd88c commit 4bd7e37
Showing 1 changed file with 27 additions and 17 deletions.
44 changes: 27 additions & 17 deletions tests/lib/rules/no-unused-state.js
Expand Up @@ -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) {
Expand Down Expand Up @@ -98,12 +96,15 @@ eslintTester.run('no-unused-state', rule, {
return <SomeComponent foo={this.state.foo} />;
}
}`,
`class ClassPropertyStateTest extends React.Component {
state = { foo: 0 };
render() {
return <SomeComponent foo={this.state.foo} />;
}
}`,
{
code: `class ClassPropertyStateTest extends React.Component {
state = { foo: 0 };
render() {
return <SomeComponent foo={this.state.foo} />;
}
}`,
parser: 'babel-eslint'
},
`class VariableDeclarationTest extends React.Component {
constructor() {
this.state = { foo: 0 };
Expand Down Expand Up @@ -180,13 +181,16 @@ eslintTester.run('no-unused-state', rule, {
return <SomeComponent foo={foo} bar={others.bar} />;
}
}`,
`class DeepDestructuringTest extends React.Component {
{
code: `class DeepDestructuringTest extends React.Component {
state = { foo: 0, bar: 0 };
render() {
const {state: {foo, ...others}} = this;
return <SomeComponent foo={foo} bar={others.bar} />;
}
}`,
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 {
Expand Down Expand Up @@ -257,14 +261,17 @@ eslintTester.run('no-unused-state', rule, {
return <SomeComponent foo={foo} />;
}
}`,
`class TypeCastExpressionSpreadFalseNegativeTest extends React.Component {
{
code: `class TypeCastExpressionSpreadFalseNegativeTest extends React.Component {
constructor() {
this.state = { foo: 0 };
}
render() {
return <SomeComponent {...(this.state: any)} />;
}
}`
}`,
parser: 'babel-eslint'
}
],

invalid: [
Expand Down Expand Up @@ -330,7 +337,8 @@ eslintTester.run('no-unused-state', rule, {
return <SomeComponent />;
}
}`,
errors: getErrorMessages(['foo'])
errors: getErrorMessages(['foo']),
parser: 'babel-eslint'
},
{
code: `class UnusedStateWhenPropsAreSpreadTest extends React.Component {
Expand Down Expand Up @@ -422,7 +430,8 @@ eslintTester.run('no-unused-state', rule, {
return <SomeComponent foo={foo} bar={bar} baz={baz} />;
}
}`,
errors: getErrorMessages(['qux'])
errors: getErrorMessages(['qux']),
parser: 'babel-eslint'
},
{
code: `class UnusedDeepDestructuringTest extends React.Component {
Expand All @@ -432,7 +441,8 @@ eslintTester.run('no-unused-state', rule, {
return <SomeComponent foo={foo} />;
}
}`,
errors: getErrorMessages(['bar'])
errors: getErrorMessages(['bar']),
parser: 'babel-eslint'
}
]
});

0 comments on commit 4bd7e37

Please sign in to comment.