1111const rule = require ( '../../../lib/rules/boolean-prop-naming' ) ;
1212const RuleTester = require ( 'eslint' ) . RuleTester ;
1313
14+ const { BABEL_ESLINT } = require ( '../../helpers/parsers' ) ;
15+
1416const parserOptions = {
1517 ecmaVersion : 2018 ,
1618 sourceType : 'module' ,
@@ -142,7 +144,7 @@ ruleTester.run('boolean-prop-naming', rule, {
142144 options : [ {
143145 rule : '^is[A-Z]([A-Za-z0-9]?)+'
144146 } ] ,
145- parser : 'babel-eslint'
147+ parser : BABEL_ESLINT
146148 } , {
147149 // ES6 components with static class properties and Object.spread syntax in PropTypes
148150 code : `
@@ -155,7 +157,7 @@ ruleTester.run('boolean-prop-naming', rule, {
155157 options : [ {
156158 rule : '^is[A-Z]([A-Za-z0-9]?)+'
157159 } ] ,
158- parser : 'babel-eslint'
160+ parser : BABEL_ESLINT
159161 } , {
160162 // ES6 components as Component with boolean PropTypes and Object.spread syntax in PropTypes
161163 code : `
@@ -179,7 +181,7 @@ ruleTester.run('boolean-prop-naming', rule, {
179181 options : [ {
180182 rule : '^is[A-Z]([A-Za-z0-9]?)+'
181183 } ] ,
182- parser : 'babel-eslint'
184+ parser : BABEL_ESLINT
183185 } , {
184186 // ES6 components with static class properties an non-booleans
185187 code : `
@@ -191,7 +193,7 @@ ruleTester.run('boolean-prop-naming', rule, {
191193 options : [ {
192194 rule : '^is[A-Z]([A-Za-z0-9]?)+'
193195 } ] ,
194- parser : 'babel-eslint'
196+ parser : BABEL_ESLINT
195197 } , {
196198 // ES6 components and Flowtype booleans
197199 code : `
@@ -203,7 +205,7 @@ ruleTester.run('boolean-prop-naming', rule, {
203205 options : [ {
204206 rule : '^is[A-Z]([A-Za-z0-9]?)+'
205207 } ] ,
206- parser : 'babel-eslint'
208+ parser : BABEL_ESLINT
207209 } , {
208210 // ES6 components and Flowtype non-booleans
209211 code : `
@@ -215,7 +217,7 @@ ruleTester.run('boolean-prop-naming', rule, {
215217 options : [ {
216218 rule : '^is[A-Z]([A-Za-z0-9]?)+'
217219 } ] ,
218- parser : 'babel-eslint'
220+ parser : BABEL_ESLINT
219221 } , {
220222 // Stateless components
221223 code : `
@@ -225,7 +227,7 @@ ruleTester.run('boolean-prop-naming', rule, {
225227 options : [ {
226228 rule : '^is[A-Z]([A-Za-z0-9]?)+'
227229 } ] ,
228- parser : 'babel-eslint'
230+ parser : BABEL_ESLINT
229231 } , {
230232 // Functional components and Flowtype booleans
231233 code : `
@@ -237,7 +239,7 @@ ruleTester.run('boolean-prop-naming', rule, {
237239 options : [ {
238240 rule : '^is[A-Z]([A-Za-z0-9]?)+'
239241 } ] ,
240- parser : 'babel-eslint'
242+ parser : BABEL_ESLINT
241243 } , {
242244 // Custom `propTypeNames` option
243245 code : `
@@ -253,7 +255,7 @@ ruleTester.run('boolean-prop-naming', rule, {
253255 propTypeNames : [ 'mutuallyExclusiveTrueProps' ] ,
254256 rule : '^is[A-Z]([A-Za-z0-9]?)+'
255257 } ] ,
256- parser : 'babel-eslint'
258+ parser : BABEL_ESLINT
257259 } , {
258260 // Custom PropTypes that are specified as variables
259261 code : `
@@ -269,7 +271,7 @@ ruleTester.run('boolean-prop-naming', rule, {
269271 propTypeNames : [ 'bool' , 'mutuallyExclusiveTrueProps' ] ,
270272 rule : '^is[A-Z]([A-Za-z0-9]?)+'
271273 } ] ,
272- parser : 'babel-eslint'
274+ parser : BABEL_ESLINT
273275 } , {
274276 // Ensure rule doesn't crash on destructured objects [Issue #1369]
275277 code : `
@@ -279,7 +281,7 @@ ruleTester.run('boolean-prop-naming', rule, {
279281 options : [ {
280282 rule : '^is[A-Z]([A-Za-z0-9]?)+'
281283 } ] ,
282- parser : 'babel-eslint'
284+ parser : BABEL_ESLINT
283285 } , {
284286 // Ensure rule doesn't crash on on components reference old-style Flow props
285287 code : `
@@ -291,7 +293,7 @@ ruleTester.run('boolean-prop-naming', rule, {
291293 options : [ {
292294 rule : '^is[A-Z]([A-Za-z0-9]?)+'
293295 } ] ,
294- parser : 'babel-eslint'
296+ parser : BABEL_ESLINT
295297 } , {
296298 // No propWrapperFunctions setting
297299 code : `
@@ -328,7 +330,7 @@ ruleTester.run('boolean-prop-naming', rule, {
328330 }
329331 }
330332 ` ,
331- parser : 'babel-eslint'
333+ parser : BABEL_ESLINT
332334 } , {
333335 // Ensure the rule does not throw when a prop isRequired when ES6 without static properties.
334336 code : `
@@ -372,7 +374,7 @@ ruleTester.run('boolean-prop-naming', rule, {
372374 options : [ {
373375 rule : '^is[A-Z]([A-Za-z0-9]?)+'
374376 } ] ,
375- parser : 'babel-eslint'
377+ parser : BABEL_ESLINT
376378 } , {
377379 code : `
378380 class Hello extends React.Component {
@@ -501,7 +503,7 @@ ruleTester.run('boolean-prop-naming', rule, {
501503 options : [ {
502504 rule : '^is[A-Z]([A-Za-z0-9]?)+'
503505 } ] ,
504- parser : 'babel-eslint' ,
506+ parser : BABEL_ESLINT ,
505507 errors : [ {
506508 message : 'Prop name (something) doesn\'t match rule (^is[A-Z]([A-Za-z0-9]?)+)'
507509 } ]
@@ -532,7 +534,7 @@ ruleTester.run('boolean-prop-naming', rule, {
532534 options : [ {
533535 rule : '^is[A-Z]([A-Za-z0-9]?)+'
534536 } ] ,
535- parser : 'babel-eslint' ,
537+ parser : BABEL_ESLINT ,
536538 errors : [ {
537539 message : 'Prop name (something) doesn\'t match rule (^is[A-Z]([A-Za-z0-9]?)+)'
538540 } ]
@@ -547,7 +549,7 @@ ruleTester.run('boolean-prop-naming', rule, {
547549 options : [ {
548550 rule : '^is[A-Z]([A-Za-z0-9]?)+'
549551 } ] ,
550- parser : 'babel-eslint' ,
552+ parser : BABEL_ESLINT ,
551553 errors : [ {
552554 message : 'Prop name (something) doesn\'t match rule (^is[A-Z]([A-Za-z0-9]?)+)'
553555 } ]
@@ -559,7 +561,7 @@ ruleTester.run('boolean-prop-naming', rule, {
559561 options : [ {
560562 rule : '^is[A-Z]([A-Za-z0-9]?)+'
561563 } ] ,
562- parser : 'babel-eslint' ,
564+ parser : BABEL_ESLINT ,
563565 errors : [ {
564566 message : 'Prop name (something) doesn\'t match rule (^is[A-Z]([A-Za-z0-9]?)+)'
565567 } ]
@@ -573,7 +575,7 @@ ruleTester.run('boolean-prop-naming', rule, {
573575 options : [ {
574576 rule : '^is[A-Z]([A-Za-z0-9]?)+'
575577 } ] ,
576- parser : 'babel-eslint' ,
578+ parser : BABEL_ESLINT ,
577579 errors : [ {
578580 message : 'Prop name (something) doesn\'t match rule (^is[A-Z]([A-Za-z0-9]?)+)'
579581 } ]
@@ -589,7 +591,7 @@ ruleTester.run('boolean-prop-naming', rule, {
589591 propTypeNames : [ 'bool' , 'mutuallyExclusiveTrueProps' ] ,
590592 rule : '^is[A-Z]([A-Za-z0-9]?)+'
591593 } ] ,
592- parser : 'babel-eslint' ,
594+ parser : BABEL_ESLINT ,
593595 errors : [ {
594596 message : 'Prop name (something) doesn\'t match rule (^is[A-Z]([A-Za-z0-9]?)+)'
595597 } ]
@@ -607,7 +609,7 @@ ruleTester.run('boolean-prop-naming', rule, {
607609 propTypeNames : [ 'bool' , 'mutuallyExclusiveTrueProps' ] ,
608610 rule : '^is[A-Z]([A-Za-z0-9]?)+'
609611 } ] ,
610- parser : 'babel-eslint' ,
612+ parser : BABEL_ESLINT ,
611613 errors : [ {
612614 message : 'Prop name (something) doesn\'t match rule (^is[A-Z]([A-Za-z0-9]?)+)'
613615 } , {
@@ -627,7 +629,7 @@ ruleTester.run('boolean-prop-naming', rule, {
627629 propTypeNames : [ 'bool' , 'mutuallyExclusiveTrueProps' ] ,
628630 rule : '^is[A-Z]([A-Za-z0-9]?)+'
629631 } ] ,
630- parser : 'babel-eslint' ,
632+ parser : BABEL_ESLINT ,
631633 errors : [ {
632634 message : 'Prop name (something) doesn\'t match rule (^is[A-Z]([A-Za-z0-9]?)+)'
633635 } , {
@@ -730,7 +732,7 @@ ruleTester.run('boolean-prop-naming', rule, {
730732 return <div>{props.showScore ? 'yeh' : 'no'}</div>;
731733 }
732734 }` ,
733- parser : 'babel-eslint' ,
735+ parser : BABEL_ESLINT ,
734736 settings : {
735737 propWrapperFunctions : [ 'forbidExtraProps' ]
736738 } ,
@@ -802,7 +804,7 @@ ruleTester.run('boolean-prop-naming', rule, {
802804 options : [ {
803805 rule : '^is[A-Z]([A-Za-z0-9]?)+'
804806 } ] ,
805- parser : 'babel-eslint' ,
807+ parser : BABEL_ESLINT ,
806808 errors : [ {
807809 message : 'Prop name (something) doesn\'t match rule (^is[A-Z]([A-Za-z0-9]?)+)'
808810 } ]
@@ -843,7 +845,7 @@ ruleTester.run('boolean-prop-naming', rule, {
843845 options : [ {
844846 rule : '^is[A-Z]([A-Za-z0-9]?)+'
845847 } ] ,
846- parser : 'babel-eslint' ,
848+ parser : BABEL_ESLINT ,
847849 errors : [ {
848850 message : 'Prop name (something) doesn\'t match rule (^is[A-Z]([A-Za-z0-9]?)+)'
849851 } ]
0 commit comments