Skip to content

Commit ab4776a

Browse files
author
Will Binns-Smith
committed
Only use babel-eslint when necessary for tests
1 parent 38bd88c commit ab4776a

File tree

1 file changed

+28
-18
lines changed

1 file changed

+28
-18
lines changed

tests/lib/rules/no-unused-state.js

+28-18
Original file line numberDiff line numberDiff line change
@@ -10,14 +10,12 @@ const RuleTester = require('eslint').RuleTester;
1010
const parserOptions = {
1111
ecmaVersion: 6,
1212
ecmaFeatures: {
13-
jsx: true
13+
jsx: true,
14+
experimentalObjectRestSpread: true
1415
}
1516
};
1617

17-
const eslintTester = new RuleTester({
18-
parserOptions: parserOptions,
19-
parser: 'babel-eslint'
20-
});
18+
const eslintTester = new RuleTester({parserOptions});
2119

2220
function getErrorMessages(unusedFields) {
2321
return unusedFields.map(function(field) {
@@ -98,12 +96,15 @@ eslintTester.run('no-unused-state', rule, {
9896
return <SomeComponent foo={this.state.foo} />;
9997
}
10098
}`,
101-
`class ClassPropertyStateTest extends React.Component {
102-
state = { foo: 0 };
103-
render() {
104-
return <SomeComponent foo={this.state.foo} />;
105-
}
106-
}`,
99+
{
100+
code: `class ClassPropertyStateTest extends React.Component {
101+
state = { foo: 0 };
102+
render() {
103+
return <SomeComponent foo={this.state.foo} />;
104+
}
105+
}`,
106+
parser: 'babel-eslint'
107+
},
107108
`class VariableDeclarationTest extends React.Component {
108109
constructor() {
109110
this.state = { foo: 0 };
@@ -180,13 +181,16 @@ eslintTester.run('no-unused-state', rule, {
180181
return <SomeComponent foo={foo} bar={others.bar} />;
181182
}
182183
}`,
183-
`class DeepDestructuringTest extends React.Component {
184+
{
185+
code: `class DeepDestructuringTest extends React.Component {
184186
state = { foo: 0, bar: 0 };
185187
render() {
186188
const {state: {foo, ...others}} = this;
187189
return <SomeComponent foo={foo} bar={others.bar} />;
188190
}
189191
}`,
192+
parser: 'babel-eslint'
193+
},
190194
// A cleverer analysis might recognize that the following should be errors,
191195
// but they're out of scope for this lint rule.
192196
`class MethodArgFalseNegativeTest extends React.Component {
@@ -195,7 +199,7 @@ eslintTester.run('no-unused-state', rule, {
195199
}
196200
consumeFoo(foo) {}
197201
render() {
198-
this.consumeFoo(this.state.foo);
202+
this.consumeFoo(this.state.foo)
199203
return <SomeComponent />;
200204
}
201205
}`,
@@ -257,14 +261,17 @@ eslintTester.run('no-unused-state', rule, {
257261
return <SomeComponent foo={foo} />;
258262
}
259263
}`,
260-
`class TypeCastExpressionSpreadFalseNegativeTest extends React.Component {
264+
{
265+
code: `class TypeCastExpressionSpreadFalseNegativeTest extends React.Component {
261266
constructor() {
262267
this.state = { foo: 0 };
263268
}
264269
render() {
265270
return <SomeComponent {...(this.state: any)} />;
266271
}
267-
}`
272+
}`,
273+
parser: 'babel-eslint'
274+
}
268275
],
269276

270277
invalid: [
@@ -330,7 +337,8 @@ eslintTester.run('no-unused-state', rule, {
330337
return <SomeComponent />;
331338
}
332339
}`,
333-
errors: getErrorMessages(['foo'])
340+
errors: getErrorMessages(['foo']),
341+
parser: 'babel-eslint'
334342
},
335343
{
336344
code: `class UnusedStateWhenPropsAreSpreadTest extends React.Component {
@@ -422,7 +430,8 @@ eslintTester.run('no-unused-state', rule, {
422430
return <SomeComponent foo={foo} bar={bar} baz={baz} />;
423431
}
424432
}`,
425-
errors: getErrorMessages(['qux'])
433+
errors: getErrorMessages(['qux']),
434+
parser: 'babel-eslint'
426435
},
427436
{
428437
code: `class UnusedDeepDestructuringTest extends React.Component {
@@ -432,7 +441,8 @@ eslintTester.run('no-unused-state', rule, {
432441
return <SomeComponent foo={foo} />;
433442
}
434443
}`,
435-
errors: getErrorMessages(['bar'])
444+
errors: getErrorMessages(['bar']),
445+
parser: 'babel-eslint'
436446
}
437447
]
438448
});

0 commit comments

Comments
 (0)