From 35f1e03f731a7133c3925844a5ce8cb4eef89988 Mon Sep 17 00:00:00 2001 From: yosuke ota Date: Thu, 14 Apr 2022 13:09:36 +0900 Subject: [PATCH] Change default casing of `vue/custom-event-name-casing` rule to camelCase --- docs/rules/custom-event-name-casing.md | 30 ++-- lib/rules/custom-event-name-casing.js | 2 +- tests/lib/rules/custom-event-name-casing.js | 143 ++++++++++++++++++-- 3 files changed, 151 insertions(+), 24 deletions(-) diff --git a/docs/rules/custom-event-name-casing.md b/docs/rules/custom-event-name-casing.md index a2c4d3644..29afde056 100644 --- a/docs/rules/custom-event-name-casing.md +++ b/docs/rules/custom-event-name-casing.md @@ -13,7 +13,7 @@ Define a style for custom event name casing for consistency purposes. ## :book: Rule Details -This rule aims to warn the custom event names other than the configured casing. +This rule aims to warn the custom event names other than the configured casing. (Default is **camelCase**.) Vue 2 recommends using kebab-case for custom event names. @@ -27,28 +27,28 @@ In Vue 3, using either camelCase or kebab-case for your custom event name does n See [Guide - Custom Events] for more details. -This rule enforces kebab-case by default. +This rule enforces camelCase by default. ```vue - ` + `, + options: ['kebab-case'] }, { filename: 'test.vue', @@ -67,7 +68,8 @@ tester.run('custom-event-name-casing', rule, { } } - ` + `, + options: ['kebab-case'] }, { filename: 'test.vue', @@ -92,7 +94,8 @@ tester.run('custom-event-name-casing', rule, { } } - ` + `, + options: ['kebab-case'] }, { filename: 'test.vue', @@ -117,7 +120,8 @@ tester.run('custom-event-name-casing', rule, { } } - ` + `, + options: ['kebab-case'] }, { filename: 'test.vue', @@ -149,7 +153,8 @@ tester.run('custom-event-name-casing', rule, { }, } - ` + `, + options: ['kebab-case'] }, { filename: 'test.vue', @@ -165,7 +170,8 @@ tester.run('custom-event-name-casing', rule, { }, } - ` + `, + options: ['kebab-case'] }, { filename: 'test.vue', @@ -269,6 +275,60 @@ tester.run('custom-event-name-casing', rule, { `, options: ['camelCase'] + }, + // Default + { + filename: 'test.vue', + code: ` + + + ` + }, + + // kebab-case + { + filename: 'test.vue', + code: ` + + + `, + options: ['kebab-case'] } ], invalid: [ @@ -296,6 +356,7 @@ tester.run('custom-event-name-casing', rule, { } `, + options: ['kebab-case'], errors: [ { message: "Custom event name 'fooBar' must be kebab-case.", @@ -344,6 +405,7 @@ tester.run('custom-event-name-casing', rule, { } `, + options: ['kebab-case'], errors: [ "Custom event name 'fooBar' must be kebab-case.", "Custom event name 'barBaz' must be kebab-case.", @@ -374,6 +436,7 @@ tester.run('custom-event-name-casing', rule, { } `, + options: ['kebab-case'], errors: [ "Custom event name 'fooBar' must be kebab-case.", "Custom event name 'barBaz' must be kebab-case.", @@ -448,6 +511,7 @@ tester.run('custom-event-name-casing', rule, { "Custom event name 'click/row' must be kebab-case." ] }, + // camelCase { filename: 'test.vue', code: ` @@ -479,6 +543,69 @@ tester.run('custom-event-name-casing', rule, { "Custom event name 'baz-qux' must be camelCase." ] }, + // Default + { + filename: 'test.vue', + code: ` + + + `, + errors: [ + "Custom event name 'foo-bar' must be camelCase.", + "Custom event name 'bar-baz' must be camelCase.", + "Custom event name 'baz-qux' must be camelCase." + ] + }, + // kebab-case + { + filename: 'test.vue', + code: ` + + + `, + options: ['kebab-case'], + errors: [ + "Custom event name 'fooBar' must be kebab-case.", + "Custom event name 'barBaz' must be kebab-case.", + "Custom event name 'bazQux' must be kebab-case." + ] + }, { filename: 'test.vue', code: ` @@ -490,8 +617,8 @@ tester.run('custom-event-name-casing', rule, { `, errors: [ { - message: "Custom event name 'fooBar' must be kebab-case.", - line: 4 + message: "Custom event name 'foo-bar' must be camelCase.", + line: 5 } ] }