eslint-plugin-jsdoc
Advanced tools
Comparing version 3.1.0 to 3.1.1
@@ -37,2 +37,6 @@ 'use strict'; | ||
var isCapitalized = function isCapitalized(str) { | ||
return str[0] === str[0].toUpperCase(); | ||
}; | ||
var validateDescription = function validateDescription(description, report) { | ||
@@ -46,3 +50,3 @@ if (!description) { | ||
return _lodash2.default.some(paragraphs, function (paragraph, index) { | ||
if (!/^[A-Z]/.test(paragraph)) { | ||
if (!isCapitalized(paragraph)) { | ||
if (index === 0) { | ||
@@ -49,0 +53,0 @@ report('Description must start with an uppercase character.'); |
@@ -17,2 +17,3 @@ { | ||
"babel-preset-env": "^1.2.2", | ||
"babel-preset-es2015": "^6.24.1", | ||
"babel-register": "^6.18.0", | ||
@@ -50,5 +51,5 @@ "chai": "^3.5.0", | ||
"lint": "eslint ./src ./test", | ||
"test": "mocha --compilers js:babel-register" | ||
"test": "mocha --recursive --compilers js:babel-register" | ||
}, | ||
"version": "3.1.0" | ||
"version": "3.1.1" | ||
} |
@@ -23,2 +23,3 @@ <a name="eslint-plugin-jsdoc"></a> | ||
* [`require-description-complete-sentence`](#eslint-plugin-jsdoc-rules-require-description-complete-sentence) | ||
* [`require-example`](#eslint-plugin-jsdoc-rules-require-example) | ||
* [`require-hyphen-before-param-description`](#eslint-plugin-jsdoc-rules-require-hyphen-before-param-description) | ||
@@ -44,2 +45,3 @@ * [`require-param`](#eslint-plugin-jsdoc-rules-require-param) | ||
| [`require-description-complete-sentence`](https://github.com/gajus/eslint-plugin-jsdoc#eslint-plugin-jsdoc-rules-require-description-complete-sentence) | [`requireDescriptionCompleteSentence`](https://github.com/jscs-dev/jscs-jsdoc#requiredescriptioncompletesentence) | | ||
| [`require-example`](https://github.com/gajus/eslint-plugin-jsdoc#eslint-plugin-jsdoc-rules-require-example) | N/A | | ||
| [`require-hyphen-before-param-description`](https://github.com/gajus/eslint-plugin-jsdoc#eslint-plugin-jsdoc-rules-require-hyphen-before-param-description) | [`requireHyphenBeforeDescription`](https://github.com/jscs-dev/jscs-jsdoc#requirehyphenbeforedescription) | | ||
@@ -96,2 +98,3 @@ | [`require-param`](https://github.com/gajus/eslint-plugin-jsdoc#eslint-plugin-jsdoc-rules-require-param) | [`checkParamExistence`](https://github.com/jscs-dev/jscs-jsdoc#checkparamexistence) | | ||
"jsdoc/require-description-complete-sentence": 1, | ||
"jsdoc/require-example": 1, | ||
"jsdoc/require-hyphen-before-param-description": 1, | ||
@@ -841,2 +844,67 @@ "jsdoc/require-param": 1, | ||
<a name="eslint-plugin-jsdoc-rules-require-example"></a> | ||
### <code>require-example</code> | ||
Requires that all functions have examples. | ||
* All functions must have one or more `@example` tags. | ||
* Every example tag must have a non-empty description that explains the method's usage. | ||
||| | ||
|---|---| | ||
|Context|`ArrowFunctionExpression`, `FunctionDeclaration`, `FunctionExpression`| | ||
|Tags|`example`| | ||
The following patterns are considered problems: | ||
```js | ||
/** | ||
* | ||
*/ | ||
function quux () { | ||
} | ||
// Message: Missing JSDoc @example declaration. | ||
/** | ||
* @example | ||
*/ | ||
function quux () { | ||
} | ||
// Message: Missing JSDoc @example description. | ||
``` | ||
The following patterns are not considered problems: | ||
```js | ||
/** | ||
* @example | ||
* // arbitrary example content | ||
*/ | ||
function quux () { | ||
} | ||
/** | ||
* @example | ||
* quux(); // does something useful | ||
*/ | ||
function quux () { | ||
} | ||
/** | ||
* @example <caption>Valid usage</caption> | ||
* quux(); // does something useful | ||
* | ||
* @example <caption>Invalid usage</caption> | ||
* quux('random unwanted arg'); // results in an error | ||
*/ | ||
function quux () { | ||
} | ||
``` | ||
<a name="eslint-plugin-jsdoc-rules-require-hyphen-before-param-description"></a> | ||
@@ -843,0 +911,0 @@ ### <code>require-hyphen-before-param-description</code> |
Sorry, the diff of this file is not supported yet
95883
733
1201
13