Skip to content

Commit ce6a87d

Browse files
committed
Merge branch 'master' of github.com:AndrewLeedham/eslint-plugin-jsdoc
# Conflicts: # .README/README.md # README.md # test/rules/assertions/requireReturns.js
2 parents bc184a4 + 7e4369b commit ce6a87d

File tree

4 files changed

+98
-8
lines changed

4 files changed

+98
-8
lines changed

.README/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -298,7 +298,7 @@ only (e.g., to match `Array` if the type is `Array` vs. `Array.<string>`).
298298
`undefined`/`void` return.
299299
* `settings.jsdoc.forceReturnsWithAsync` - Set to `true` to always insist on
300300
`@returns` documentation regardless of implicit or explicit `return`'s
301-
in an async function. May be desired to flag that a project is aware of an
301+
in an async function. May be desired to flag that a project is aware of a
302302
`Promise<void>` return.
303303

304304
### Settings to Configure `require-example`

README.md

Lines changed: 26 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -353,7 +353,7 @@ only (e.g., to match `Array` if the type is `Array` vs. `Array.<string>`).
353353
`undefined`/`void` return.
354354
* `settings.jsdoc.forceReturnsWithAsync` - Set to `true` to always insist on
355355
`@returns` documentation regardless of implicit or explicit `return`'s
356-
in an async function. May be desired to flag that a project is aware of an
356+
in an async function. May be desired to flag that a project is aware of a
357357
`Promise<void>` return.
358358

359359
<a name="eslint-plugin-jsdoc-settings-settings-to-configure-require-example"></a>
@@ -1227,7 +1227,7 @@ function quux (foo) {
12271227
}
12281228
// Settings: {"jsdoc":{"additionalTagNames":{"customTags":["baz","bar"]}}}
12291229

1230-
/**
1230+
/**
12311231
* @abstract
12321232
* @access
12331233
* @alias
@@ -4620,11 +4620,25 @@ function quux (foo) {
46204620
/**
46214621
*
46224622
*/
4623-
function quux () {
4623+
async function quux() {
46244624
}
46254625
// Settings: {"jsdoc":{"forceRequireReturn":true}}
46264626
// Message: Missing JSDoc @returns declaration.
46274627

4628+
/**
4629+
*
4630+
*/
4631+
const quux = async function () {}
4632+
// Settings: {"jsdoc":{"forceRequireReturn":true}}
4633+
// Message: Missing JSDoc @returns declaration.
4634+
4635+
/**
4636+
*
4637+
*/
4638+
const quux = async () => {}
4639+
// Settings: {"jsdoc":{"forceRequireReturn":true}}
4640+
// Message: Missing JSDoc @returns declaration.
4641+
46284642
/**
46294643
*
46304644
*/
@@ -4642,6 +4656,14 @@ const language = {
46424656
}
46434657
}
46444658
// Message: Missing JSDoc @returns declaration.
4659+
4660+
/**
4661+
*
4662+
*/
4663+
async function quux () {
4664+
}
4665+
// Settings: {"jsdoc":{"forceReturnsWithAsync":true}}
4666+
// Message: Missing JSDoc @returns declaration.
46454667
````
46464668

46474669
The following patterns are not considered problems:
@@ -5002,7 +5024,7 @@ function quux() {
50025024

50035025
}
50045026
// Settings: {"jsdoc":{"allowEmptyNamepaths":false}}
5005-
// Message: Syntax error in type:
5027+
// Message: Syntax error in type:
50065028
````
50075029

50085030
The following patterns are not considered problems:

package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,12 +26,12 @@
2626
"gitdown": "^2.5.8",
2727
"glob": "^7.1.4",
2828
"globby": "^9.2.0",
29-
"husky": "^2.4.0",
29+
"husky": "^2.4.1",
3030
"marked": "^0.6.2",
3131
"mocha": "^6.1.4",
3232
"nyc": "^14.1.1",
3333
"semantic-release": "^15.13.16",
34-
"typescript": "^3.5.1"
34+
"typescript": "^3.5.2"
3535
},
3636
"engines": {
3737
"node": ">=6"

test/rules/assertions/requireReturns.js

Lines changed: 69 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,7 @@ export default {
9090
/**
9191
*
9292
*/
93-
function quux () {
93+
async function quux() {
9494
}
9595
`,
9696
errors: [
@@ -99,6 +99,31 @@ export default {
9999
message: 'Missing JSDoc @returns declaration.'
100100
}
101101
],
102+
parserOptions: {
103+
ecmaVersion: 8
104+
},
105+
settings: {
106+
jsdoc: {
107+
forceRequireReturn: true
108+
}
109+
}
110+
},
111+
{
112+
code: `
113+
/**
114+
*
115+
*/
116+
const quux = async function () {}
117+
`,
118+
errors: [
119+
{
120+
line: 2,
121+
message: 'Missing JSDoc @returns declaration.'
122+
}
123+
],
124+
parserOptions: {
125+
ecmaVersion: 8
126+
},
102127
settings: {
103128
jsdoc: {
104129
forceRequireReturn: true
@@ -122,6 +147,26 @@ export default {
122147
parserOptions: {
123148
ecmaVersion: 8
124149
},
150+
settings: {
151+
jsdoc: {
152+
forceRequireReturn: true
153+
}
154+
}
155+
},
156+
{
157+
code: `
158+
/**
159+
*
160+
*/
161+
function quux () {
162+
}
163+
`,
164+
errors: [
165+
{
166+
line: 2,
167+
message: 'Missing JSDoc @returns declaration.'
168+
}
169+
],
125170
settings: {
126171
jsdoc: {
127172
forceReturnsWithAsync: true
@@ -145,6 +190,29 @@ export default {
145190
message: 'Missing JSDoc @returns declaration.'
146191
}
147192
]
193+
},
194+
{
195+
code: `
196+
/**
197+
*
198+
*/
199+
async function quux () {
200+
}
201+
`,
202+
errors: [
203+
{
204+
line: 2,
205+
message: 'Missing JSDoc @returns declaration.'
206+
}
207+
],
208+
parserOptions: {
209+
ecmaVersion: 8
210+
},
211+
settings: {
212+
jsdoc: {
213+
forceReturnsWithAsync: true
214+
}
215+
}
148216
}
149217
],
150218
valid: [

0 commit comments

Comments
 (0)