11
11
const rule = require ( '../../../lib/rules/boolean-prop-naming' ) ;
12
12
const RuleTester = require ( 'eslint' ) . RuleTester ;
13
13
14
+ const { BABEL_ESLINT } = require ( '../../helpers/parsers' ) ;
15
+
14
16
const parserOptions = {
15
17
ecmaVersion : 2018 ,
16
18
sourceType : 'module' ,
@@ -142,7 +144,7 @@ ruleTester.run('boolean-prop-naming', rule, {
142
144
options : [ {
143
145
rule : '^is[A-Z]([A-Za-z0-9]?)+'
144
146
} ] ,
145
- parser : 'babel-eslint'
147
+ parser : BABEL_ESLINT
146
148
} , {
147
149
// ES6 components with static class properties and Object.spread syntax in PropTypes
148
150
code : `
@@ -155,7 +157,7 @@ ruleTester.run('boolean-prop-naming', rule, {
155
157
options : [ {
156
158
rule : '^is[A-Z]([A-Za-z0-9]?)+'
157
159
} ] ,
158
- parser : 'babel-eslint'
160
+ parser : BABEL_ESLINT
159
161
} , {
160
162
// ES6 components as Component with boolean PropTypes and Object.spread syntax in PropTypes
161
163
code : `
@@ -179,7 +181,7 @@ ruleTester.run('boolean-prop-naming', rule, {
179
181
options : [ {
180
182
rule : '^is[A-Z]([A-Za-z0-9]?)+'
181
183
} ] ,
182
- parser : 'babel-eslint'
184
+ parser : BABEL_ESLINT
183
185
} , {
184
186
// ES6 components with static class properties an non-booleans
185
187
code : `
@@ -191,7 +193,7 @@ ruleTester.run('boolean-prop-naming', rule, {
191
193
options : [ {
192
194
rule : '^is[A-Z]([A-Za-z0-9]?)+'
193
195
} ] ,
194
- parser : 'babel-eslint'
196
+ parser : BABEL_ESLINT
195
197
} , {
196
198
// ES6 components and Flowtype booleans
197
199
code : `
@@ -203,7 +205,7 @@ ruleTester.run('boolean-prop-naming', rule, {
203
205
options : [ {
204
206
rule : '^is[A-Z]([A-Za-z0-9]?)+'
205
207
} ] ,
206
- parser : 'babel-eslint'
208
+ parser : BABEL_ESLINT
207
209
} , {
208
210
// ES6 components and Flowtype non-booleans
209
211
code : `
@@ -215,7 +217,7 @@ ruleTester.run('boolean-prop-naming', rule, {
215
217
options : [ {
216
218
rule : '^is[A-Z]([A-Za-z0-9]?)+'
217
219
} ] ,
218
- parser : 'babel-eslint'
220
+ parser : BABEL_ESLINT
219
221
} , {
220
222
// Stateless components
221
223
code : `
@@ -225,7 +227,7 @@ ruleTester.run('boolean-prop-naming', rule, {
225
227
options : [ {
226
228
rule : '^is[A-Z]([A-Za-z0-9]?)+'
227
229
} ] ,
228
- parser : 'babel-eslint'
230
+ parser : BABEL_ESLINT
229
231
} , {
230
232
// Functional components and Flowtype booleans
231
233
code : `
@@ -237,7 +239,7 @@ ruleTester.run('boolean-prop-naming', rule, {
237
239
options : [ {
238
240
rule : '^is[A-Z]([A-Za-z0-9]?)+'
239
241
} ] ,
240
- parser : 'babel-eslint'
242
+ parser : BABEL_ESLINT
241
243
} , {
242
244
// Custom `propTypeNames` option
243
245
code : `
@@ -253,7 +255,7 @@ ruleTester.run('boolean-prop-naming', rule, {
253
255
propTypeNames : [ 'mutuallyExclusiveTrueProps' ] ,
254
256
rule : '^is[A-Z]([A-Za-z0-9]?)+'
255
257
} ] ,
256
- parser : 'babel-eslint'
258
+ parser : BABEL_ESLINT
257
259
} , {
258
260
// Custom PropTypes that are specified as variables
259
261
code : `
@@ -269,7 +271,7 @@ ruleTester.run('boolean-prop-naming', rule, {
269
271
propTypeNames : [ 'bool' , 'mutuallyExclusiveTrueProps' ] ,
270
272
rule : '^is[A-Z]([A-Za-z0-9]?)+'
271
273
} ] ,
272
- parser : 'babel-eslint'
274
+ parser : BABEL_ESLINT
273
275
} , {
274
276
// Ensure rule doesn't crash on destructured objects [Issue #1369]
275
277
code : `
@@ -279,7 +281,7 @@ ruleTester.run('boolean-prop-naming', rule, {
279
281
options : [ {
280
282
rule : '^is[A-Z]([A-Za-z0-9]?)+'
281
283
} ] ,
282
- parser : 'babel-eslint'
284
+ parser : BABEL_ESLINT
283
285
} , {
284
286
// Ensure rule doesn't crash on on components reference old-style Flow props
285
287
code : `
@@ -291,7 +293,7 @@ ruleTester.run('boolean-prop-naming', rule, {
291
293
options : [ {
292
294
rule : '^is[A-Z]([A-Za-z0-9]?)+'
293
295
} ] ,
294
- parser : 'babel-eslint'
296
+ parser : BABEL_ESLINT
295
297
} , {
296
298
// No propWrapperFunctions setting
297
299
code : `
@@ -328,7 +330,7 @@ ruleTester.run('boolean-prop-naming', rule, {
328
330
}
329
331
}
330
332
` ,
331
- parser : 'babel-eslint'
333
+ parser : BABEL_ESLINT
332
334
} , {
333
335
// Ensure the rule does not throw when a prop isRequired when ES6 without static properties.
334
336
code : `
@@ -372,7 +374,7 @@ ruleTester.run('boolean-prop-naming', rule, {
372
374
options : [ {
373
375
rule : '^is[A-Z]([A-Za-z0-9]?)+'
374
376
} ] ,
375
- parser : 'babel-eslint'
377
+ parser : BABEL_ESLINT
376
378
} , {
377
379
code : `
378
380
class Hello extends React.Component {
@@ -501,7 +503,7 @@ ruleTester.run('boolean-prop-naming', rule, {
501
503
options : [ {
502
504
rule : '^is[A-Z]([A-Za-z0-9]?)+'
503
505
} ] ,
504
- parser : 'babel-eslint' ,
506
+ parser : BABEL_ESLINT ,
505
507
errors : [ {
506
508
message : 'Prop name (something) doesn\'t match rule (^is[A-Z]([A-Za-z0-9]?)+)'
507
509
} ]
@@ -532,7 +534,7 @@ ruleTester.run('boolean-prop-naming', rule, {
532
534
options : [ {
533
535
rule : '^is[A-Z]([A-Za-z0-9]?)+'
534
536
} ] ,
535
- parser : 'babel-eslint' ,
537
+ parser : BABEL_ESLINT ,
536
538
errors : [ {
537
539
message : 'Prop name (something) doesn\'t match rule (^is[A-Z]([A-Za-z0-9]?)+)'
538
540
} ]
@@ -547,7 +549,7 @@ ruleTester.run('boolean-prop-naming', rule, {
547
549
options : [ {
548
550
rule : '^is[A-Z]([A-Za-z0-9]?)+'
549
551
} ] ,
550
- parser : 'babel-eslint' ,
552
+ parser : BABEL_ESLINT ,
551
553
errors : [ {
552
554
message : 'Prop name (something) doesn\'t match rule (^is[A-Z]([A-Za-z0-9]?)+)'
553
555
} ]
@@ -559,7 +561,7 @@ ruleTester.run('boolean-prop-naming', rule, {
559
561
options : [ {
560
562
rule : '^is[A-Z]([A-Za-z0-9]?)+'
561
563
} ] ,
562
- parser : 'babel-eslint' ,
564
+ parser : BABEL_ESLINT ,
563
565
errors : [ {
564
566
message : 'Prop name (something) doesn\'t match rule (^is[A-Z]([A-Za-z0-9]?)+)'
565
567
} ]
@@ -573,7 +575,7 @@ ruleTester.run('boolean-prop-naming', rule, {
573
575
options : [ {
574
576
rule : '^is[A-Z]([A-Za-z0-9]?)+'
575
577
} ] ,
576
- parser : 'babel-eslint' ,
578
+ parser : BABEL_ESLINT ,
577
579
errors : [ {
578
580
message : 'Prop name (something) doesn\'t match rule (^is[A-Z]([A-Za-z0-9]?)+)'
579
581
} ]
@@ -589,7 +591,7 @@ ruleTester.run('boolean-prop-naming', rule, {
589
591
propTypeNames : [ 'bool' , 'mutuallyExclusiveTrueProps' ] ,
590
592
rule : '^is[A-Z]([A-Za-z0-9]?)+'
591
593
} ] ,
592
- parser : 'babel-eslint' ,
594
+ parser : BABEL_ESLINT ,
593
595
errors : [ {
594
596
message : 'Prop name (something) doesn\'t match rule (^is[A-Z]([A-Za-z0-9]?)+)'
595
597
} ]
@@ -607,7 +609,7 @@ ruleTester.run('boolean-prop-naming', rule, {
607
609
propTypeNames : [ 'bool' , 'mutuallyExclusiveTrueProps' ] ,
608
610
rule : '^is[A-Z]([A-Za-z0-9]?)+'
609
611
} ] ,
610
- parser : 'babel-eslint' ,
612
+ parser : BABEL_ESLINT ,
611
613
errors : [ {
612
614
message : 'Prop name (something) doesn\'t match rule (^is[A-Z]([A-Za-z0-9]?)+)'
613
615
} , {
@@ -627,7 +629,7 @@ ruleTester.run('boolean-prop-naming', rule, {
627
629
propTypeNames : [ 'bool' , 'mutuallyExclusiveTrueProps' ] ,
628
630
rule : '^is[A-Z]([A-Za-z0-9]?)+'
629
631
} ] ,
630
- parser : 'babel-eslint' ,
632
+ parser : BABEL_ESLINT ,
631
633
errors : [ {
632
634
message : 'Prop name (something) doesn\'t match rule (^is[A-Z]([A-Za-z0-9]?)+)'
633
635
} , {
@@ -730,7 +732,7 @@ ruleTester.run('boolean-prop-naming', rule, {
730
732
return <div>{props.showScore ? 'yeh' : 'no'}</div>;
731
733
}
732
734
}` ,
733
- parser : 'babel-eslint' ,
735
+ parser : BABEL_ESLINT ,
734
736
settings : {
735
737
propWrapperFunctions : [ 'forbidExtraProps' ]
736
738
} ,
@@ -802,7 +804,7 @@ ruleTester.run('boolean-prop-naming', rule, {
802
804
options : [ {
803
805
rule : '^is[A-Z]([A-Za-z0-9]?)+'
804
806
} ] ,
805
- parser : 'babel-eslint' ,
807
+ parser : BABEL_ESLINT ,
806
808
errors : [ {
807
809
message : 'Prop name (something) doesn\'t match rule (^is[A-Z]([A-Za-z0-9]?)+)'
808
810
} ]
@@ -843,7 +845,7 @@ ruleTester.run('boolean-prop-naming', rule, {
843
845
options : [ {
844
846
rule : '^is[A-Z]([A-Za-z0-9]?)+'
845
847
} ] ,
846
- parser : 'babel-eslint' ,
848
+ parser : BABEL_ESLINT ,
847
849
errors : [ {
848
850
message : 'Prop name (something) doesn\'t match rule (^is[A-Z]([A-Za-z0-9]?)+)'
849
851
} ]
0 commit comments