ESLint rules for AVA
Translations: Franais
This plugin is bundled in XO. No need to do anything if you're using it.
**Propose or contribute a new rule **
$ npm install --save-dev eslint eslint-plugin-ava
Configure it in package.json
.
{
"name": "my-awesome-project",
"eslintConfig": {
"env": {
"es6": true
},
"parserOptions": {
"ecmaVersion": "latest",
"sourceType": "module"
},
"plugins": [
"ava"
],
"rules": {
"ava/assertion-arguments": "error",
"ava/hooks-order": "error",
"ava/max-asserts": [
"off",
5
],
"ava/no-async-fn-without-await": "error",
"ava/no-duplicate-modifiers": "error",
"ava/no-identical-title": "error",
"ava/no-ignored-test-files": "error",
"ava/no-import-test-files": "error",
"ava/no-incorrect-deep-equal": "error",
"ava/no-inline-assertions": "error",
"ava/no-nested-tests": "error",
"ava/no-only-test": "error",
"ava/no-skip-assert": "error",
"ava/no-skip-test": "error",
"ava/no-todo-implementation": "error",
"ava/no-todo-test": "warn",
"ava/no-unknown-modifiers": "error",
"ava/prefer-async-await": "error",
"ava/prefer-power-assert": "off",
"ava/prefer-t-regex": "error",
"ava/test-title": "error",
"ava/test-title-format": "off",
"ava/use-t": "error",
"ava/use-t-throws-async-well": "error",
"ava/use-t-well": "error",
"ava/use-test": "error",
"ava/use-true-false": "error"
}
}
}
The rules will only activate in test files.
await
.deepEqual
with primitives. (fixable)
test.only()
are present.test.todo()
is not given an implementation function.test.todo()
is used.t.regex()
to test regular expressions. (fixable)
t
as their parameter.t.throwsAsync()
and t.notThrowsAsync()
are awaited. (partly fixable)
t
. (partly fixable)
test
as the variable name.t.true()
/t.false()
are used instead of t.truthy()
/t.falsy()
.This plugin exports a recommended
config that enforces good practices.
Enable it in your package.json
with the extends
option:
{
"name": "my-awesome-project",
"eslintConfig": {
"extends": "plugin:ava/recommended"
}
}
See the ESLint docs for more information about extending config files.
Note: This config will also enable the correct parser options and environment.