Support private properties for semi rule (#11748)

* Support private properties for semi rule

* Combine selectors
This commit is contained in:
Simon Kotwicz 2020-06-29 17:36:03 -04:00 committed by GitHub
parent 5743ad3923
commit 379e1c5593
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 12 additions and 1 deletions

View File

@ -79,7 +79,7 @@ function report(context, node, missing) {
export default ruleComposer.joinReports([
rule,
context => ({
ClassProperty(node) {
"ClassProperty, ClassPrivateProperty"(node) {
const options = context.options[1];
const exceptOneLine = options && options.omitLastInOneLineBlock === true;
const sourceCode = context.getSourceCode();

View File

@ -6,6 +6,7 @@ const ruleTester = new RuleTester();
ruleTester.run("semi", rule, {
valid: [
"class Foo { bar = 'example'; }",
"class Foo { #bar = 'example'; }",
"class Foo { static bar = 'example'; }",
{
code: "class Foo { bar = () => {}; }",
@ -14,6 +15,7 @@ ruleTester.run("semi", rule, {
// never
{ code: "class Foo { bar = 'example' }", options: ["never"] },
{ code: "class Foo { #bar = 'example' }", options: ["never"] },
{ code: "class Foo { static bar = 'example' }", options: ["never"] },
{ code: "class Foo { bar = () => {} }", options: ["never"] },
],
@ -22,6 +24,10 @@ ruleTester.run("semi", rule, {
code: "class Foo { bar = 'example' }",
errors: [{ message: "Missing semicolon." }],
},
{
code: "class Foo { #bar = 'example' }",
errors: [{ message: "Missing semicolon." }],
},
{
code: "class Foo { static bar = 'example' }",
errors: [{ message: "Missing semicolon." }],
@ -38,6 +44,11 @@ ruleTester.run("semi", rule, {
options: ["never"],
errors: [{ message: "Extra semicolon." }],
},
{
code: "class Foo { #bar = 'example'; }",
options: ["never"],
errors: [{ message: "Extra semicolon." }],
},
{
code: "class Foo { static bar = 'example'; }",
options: ["never"],