@@ -145,6 +145,26 @@ ruleTester.run('component-definition-name-casing', rule, {
145145 filename : 'test.js' ,
146146 code : `fn1(component.data)` ,
147147 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
148168 }
149169 ] ,
150170
@@ -393,6 +413,34 @@ ruleTester.run('component-definition-name-casing', rule, {
393413 line : 1
394414 }
395415 ]
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+ ]
396444 }
397445 ]
398446} )
0 commit comments