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([ export default ruleComposer.joinReports([
rule, rule,
context => ({ context => ({
ClassProperty(node) { "ClassProperty, ClassPrivateProperty"(node) {
const options = context.options[1]; const options = context.options[1];
const exceptOneLine = options && options.omitLastInOneLineBlock === true; const exceptOneLine = options && options.omitLastInOneLineBlock === true;
const sourceCode = context.getSourceCode(); const sourceCode = context.getSourceCode();

View File

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