Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

eslint-plugin-ava Coverage Status

ESLint rules for AVA

Translations: Français

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": [
		"rules": {
			"ava/assertion-arguments": "error",
			"ava/...": "error"


The rules will only activate in test files.

💼 Configurations enabled in.
⚠️ Configurations set to warn in.
🚫 Configurations disabled in.
Set in the recommended configuration.
🔧 Automatically fixable by the --fix CLI option.
💡 Manually fixable by editor suggestions.

Name                      Description 💼 ⚠️ 🚫 🔧 💡
assertion-arguments Enforce passing correct arguments to assertions. 🔧
hooks-order Enforce test hook ordering. 🔧
max-asserts Enforce a limit on the number of assertions in a test.
no-async-fn-without-await Ensure that async tests use await.
no-duplicate-modifiers Ensure tests do not have duplicate modifiers.
no-identical-title Ensure no tests have the same title.
no-ignored-test-files Ensure no tests are written in ignored files.
no-import-test-files Ensure no test files are imported anywhere.
no-incorrect-deep-equal Disallow using deepEqual with primitives. 🔧
no-inline-assertions Ensure assertions are not called from inline arrow functions. 🔧
no-nested-tests Ensure no tests are nested.
no-only-test Ensure no test.only() are present. 🔧 💡
no-skip-assert Ensure no assertions are skipped.
no-skip-test Ensure no tests are skipped. 🔧 💡
no-todo-implementation Ensure test.todo() is not given an implementation function.
no-todo-test Ensure no test.todo() is used.
no-unknown-modifiers Disallow the use of unknown test modifiers.
prefer-async-await Prefer using async/await instead of returning a Promise.
prefer-power-assert Enforce the use of the asserts that have no power-assert alternative.
prefer-t-regex Prefer using t.regex() to test regular expressions. 🔧
test-title Ensure tests have a title.
test-title-format Ensure test titles have a certain format.
use-t Ensure test functions use t as their parameter.
use-t-throws-async-well Ensure that t.throwsAsync() and t.notThrowsAsync() are awaited. 🔧
use-t-well Disallow the incorrect use of t. 🔧
use-test Ensure that AVA is imported with test as the variable name.
use-true-false Ensure that t.true()/t.false() are used instead of t.truthy()/t.falsy().

Recommended config

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.