@@ -145,6 +145,26 @@ ruleTester.run('component-definition-name-casing', rule, {
145
145
filename : 'test.js' ,
146
146
code : `fn1(component.data)` ,
147
147
parserOptions
148
+ } ,
149
+ {
150
+ filename : 'test.vue' ,
151
+ code : `<script setup> defineOptions({}) </script>` ,
152
+ parser : require . resolve ( 'vue-eslint-parser' ) ,
153
+ parserOptions
154
+ } ,
155
+ {
156
+ filename : 'test.vue' ,
157
+ code : `<script setup> defineOptions({name: 'FooBar'}) </script>` ,
158
+ options : [ 'PascalCase' ] ,
159
+ parser : require . resolve ( 'vue-eslint-parser' ) ,
160
+ parserOptions
161
+ } ,
162
+ {
163
+ filename : 'test.vue' ,
164
+ code : `<script setup> defineOptions({name: 'foo-bar'}) </script>` ,
165
+ options : [ 'kebab-case' ] ,
166
+ parser : require . resolve ( 'vue-eslint-parser' ) ,
167
+ parserOptions
148
168
}
149
169
] ,
150
170
@@ -393,6 +413,34 @@ ruleTester.run('component-definition-name-casing', rule, {
393
413
line : 1
394
414
}
395
415
]
416
+ } ,
417
+ {
418
+ filename : 'test.vue' ,
419
+ code : `<script setup> defineOptions({name: 'foo-bar'}) </script>` ,
420
+ output : `<script setup> defineOptions({name: 'FooBar'}) </script>` ,
421
+ options : [ 'PascalCase' ] ,
422
+ parser : require . resolve ( 'vue-eslint-parser' ) ,
423
+ parserOptions,
424
+ errors : [
425
+ {
426
+ message : 'Property name "foo-bar" is not PascalCase.' ,
427
+ line : 1
428
+ }
429
+ ]
430
+ } ,
431
+ {
432
+ filename : 'test.vue' ,
433
+ code : `<script setup> defineOptions({name: 'FooBar'}) </script>` ,
434
+ output : `<script setup> defineOptions({name: 'foo-bar'}) </script>` ,
435
+ options : [ 'kebab-case' ] ,
436
+ parser : require . resolve ( 'vue-eslint-parser' ) ,
437
+ parserOptions,
438
+ errors : [
439
+ {
440
+ message : 'Property name "FooBar" is not kebab-case.' ,
441
+ line : 1
442
+ }
443
+ ]
396
444
}
397
445
]
398
446
} )
0 commit comments