Skip to content

Commit 7f34ca4

Browse files
committed
test(require-jsdoc): show exclusion of private MethodDefinition
1 parent dfde551 commit 7f34ca4

File tree

2 files changed

+92
-0
lines changed

2 files changed

+92
-0
lines changed

README.md

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7783,6 +7783,25 @@ class MyClass {
77837783
}
77847784
// Options: [{"exemptEmptyFunctions":true,"require":{"ClassDeclaration":true}}]
77857785
// Message: Missing JSDoc comment.
7786+
7787+
export default class Test {
7788+
constructor(a) {
7789+
this.a = a;
7790+
}
7791+
}
7792+
// Options: [{"publicOnly":true,"require":{"ArrowFunctionExpression":false,"ClassDeclaration":false,"ClassExpression":false,"FunctionDeclaration":false,"FunctionExpression":false,"MethodDefinition":true}}]
7793+
// Message: Missing JSDoc comment.
7794+
7795+
export default class Test {
7796+
constructor(a) {
7797+
this.a = a;
7798+
}
7799+
private abc(a) {
7800+
this.a = a;
7801+
}
7802+
}
7803+
// Options: [{"contexts":["MethodDefinition:not([accessibility=\"private\"]) > FunctionExpression"],"publicOnly":true,"require":{"ArrowFunctionExpression":false,"ClassDeclaration":false,"ClassExpression":false,"FunctionDeclaration":false,"FunctionExpression":false,"MethodDefinition":false}}]
7804+
// Message: Missing JSDoc comment.
77867805
````
77877806
77887807
The following patterns are not considered problems:
@@ -8406,6 +8425,13 @@ export interface Foo extends Bar {
84068425
meow(): void;
84078426
}
84088427
// Options: [{"contexts":["TSMethodSignature"]}]
8428+
8429+
export default class Test {
8430+
private abc(a) {
8431+
this.a = a;
8432+
}
8433+
}
8434+
// Options: [{"contexts":["MethodDefinition:not([accessibility=\"private\"]) > FunctionExpression"],"publicOnly":true,"require":{"ArrowFunctionExpression":false,"ClassDeclaration":false,"ClassExpression":false,"FunctionDeclaration":false,"FunctionExpression":false,"MethodDefinition":false}}]
84098435
````
84108436
84118437

test/rules/assertions/requireJsdoc.js

Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1215,6 +1215,43 @@ export default {
12151215
sourceType: 'module',
12161216
},
12171217
},
1218+
{
1219+
code: `
1220+
export default class Test {
1221+
constructor(a) {
1222+
this.a = a;
1223+
}
1224+
private abc(a) {
1225+
this.a = a;
1226+
}
1227+
}
1228+
`,
1229+
errors: [
1230+
{
1231+
message: 'Missing JSDoc comment.',
1232+
},
1233+
],
1234+
options: [
1235+
{
1236+
contexts: [
1237+
'MethodDefinition:not([accessibility="private"]) > FunctionExpression',
1238+
],
1239+
publicOnly: true,
1240+
require: {
1241+
ArrowFunctionExpression: false,
1242+
ClassDeclaration: false,
1243+
ClassExpression: false,
1244+
FunctionDeclaration: false,
1245+
FunctionExpression: false,
1246+
MethodDefinition: false,
1247+
},
1248+
},
1249+
],
1250+
parser: require.resolve('@typescript-eslint/parser'),
1251+
parserOptions: {
1252+
sourceType: 'module',
1253+
},
1254+
},
12181255
],
12191256
valid: [{
12201257
code: `
@@ -2503,5 +2540,34 @@ export default {
25032540
}],
25042541
parser: require.resolve('@typescript-eslint/parser'),
25052542
},
2543+
{
2544+
code: `
2545+
export default class Test {
2546+
private abc(a) {
2547+
this.a = a;
2548+
}
2549+
}
2550+
`,
2551+
options: [
2552+
{
2553+
contexts: [
2554+
'MethodDefinition:not([accessibility="private"]) > FunctionExpression',
2555+
],
2556+
publicOnly: true,
2557+
require: {
2558+
ArrowFunctionExpression: false,
2559+
ClassDeclaration: false,
2560+
ClassExpression: false,
2561+
FunctionDeclaration: false,
2562+
FunctionExpression: false,
2563+
MethodDefinition: false,
2564+
},
2565+
},
2566+
],
2567+
parser: require.resolve('@typescript-eslint/parser'),
2568+
parserOptions: {
2569+
sourceType: 'module',
2570+
},
2571+
},
25062572
],
25072573
};

0 commit comments

Comments
 (0)