eslint-plugin-tdd
Provides tdd ("assert"-like to put it simple) set of rules.
Currently is tested against chai.js
Installation
Install ESLint either locally or globally.
$ npm install eslint
If you installed ESLint
globally, you have to install Chai plugin globally too. Otherwise, install it locally.
$ npm install eslint-plugin-tdd
The project is still very young (literally months old), and there are seven rules under the hood so far. This does not mean you can not use this project - after all this project is dedicated to testing the quality of test code. Keeping in mind that, it is production ready.
Configuration
Add plugins
section and specify eslint-plugin-tdd as a plugin.
Finally, enable all of the rules that you would like to use.
List of supported rules
- assert-enforce-below-above: Enforces using of
assert.isBelow
/assert.isAbove
instead of explicit '>' / '<' comparisons inassert
,assert.isTrue
,assert.isFalse
- assert-enforce-boolean: Enforces using of
assert.isTrue
andassert.isFalse
wherever and whenever it is possible. - assert-enforce-implicit-comparison: Enforces using of
assert.equal
/assert.strictEqual
instead of explicit comparisons in assert - assert-enforce-least-most: Enforces using of
assert.isAtLeast
/assert.isAtMost
instead of explicit '>=' / '<=' comparisons inassert
,assert.isTrue
andassert.isFalse
- assert-no-boolean-negation: Enforces using of
assert.isTrue
andassert.isFalse
without boolean negation. - assert-no-operator: Disallows using of
assert.operator
- assert-no-typeof: Disallows using of
typeof a == b
sort of expressions in favor of specialiazedassert.isString
,assert.isNumber
etc. assertions
License
We are too polite to say take this code and do whatever you fuck want to do, so here we go:
eslint-plugin-tdd is licensed under the MIT License.