diff --git a/README.md b/README.md index f4f5f1e53..1f25048fe 100644 --- a/README.md +++ b/README.md @@ -8367,6 +8367,12 @@ function myFunction() { // Settings: {"jsdoc":{"minLines":1}} // Message: Missing JSDoc comment. +function myFunction() { + +} +// Options: [{"enableFixer":false}] +// Message: Missing JSDoc comment. + export var test = function () { }; diff --git a/src/rules/requireJsdoc.js b/src/rules/requireJsdoc.js index f07b99191..4a643ff35 100644 --- a/src/rules/requireJsdoc.js +++ b/src/rules/requireJsdoc.js @@ -29,6 +29,10 @@ const OPTIONS_SCHEMA = { }, type: 'array', }, + enableFixer: { + default: true, + type: 'boolean', + }, exemptEmptyFunctions: { default: false, type: 'boolean', @@ -108,10 +112,12 @@ const getOptions = (context) => { publicOnly, contexts = [], exemptEmptyFunctions = false, + enableFixer = true, } = context.options[0] || {}; return { contexts, + enableFixer, exemptEmptyFunctions, publicOnly: ((baseObj) => { if (!publicOnly) { @@ -146,7 +152,7 @@ export default { const { require: requireOption, contexts, - publicOnly, exemptEmptyFunctions, + publicOnly, exemptEmptyFunctions, enableFixer, } = getOptions(context); const checkJsDoc = (node, isFunctionContext) => { @@ -200,7 +206,7 @@ export default { start: node.loc.start, }; context.report({ - fix, + fix: enableFixer ? fix : null, loc, messageId: 'missingJsDoc', node, diff --git a/test/rules/assertions/requireJsdoc.js b/test/rules/assertions/requireJsdoc.js index be7daed2a..bd805a9a0 100644 --- a/test/rules/assertions/requireJsdoc.js +++ b/test/rules/assertions/requireJsdoc.js @@ -97,6 +97,28 @@ export default { }, }, }, + { + code: ` + function myFunction() { + + } + `, + errors: [ + { + message: 'Missing JSDoc comment.', + }, + ], + options: [ + { + enableFixer: false, + }, + ], + output: ` + function myFunction() { + + } + `, + }, { code: ` export var test = function () {