ESLint rules for AVA
JavaScript
Latest commit c5194b6 Jan 13, 2017 @sindresorhus sindresorhus Bump dependencies

readme.md

eslint-plugin-ava Build Status 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.

Install

$ npm install --save-dev eslint eslint-plugin-ava

Usage

Configure it in package.json.

{
    "name": "my-awesome-project",
    "eslintConfig": {
        "env": {
            "es6": true
        },
        "parserOptions": {
            "ecmaVersion": 2017,
            "sourceType": "module"
        },
        "plugins": [
            "ava"
        ],
        "rules": {
            "ava/assertion-arguments": "error",
            "ava/max-asserts": ["off", 5],
            "ava/no-async-fn-without-await": "error",
            "ava/no-cb-test": "off",
            "ava/no-duplicate-modifiers": "error",
            "ava/no-identical-title": "error",
            "ava/no-ignored-test-files": "error",
            "ava/no-invalid-end": "error",
            "ava/no-nested-tests": "error",
            "ava/no-only-test": "error",
            "ava/no-skip-assert": "error",
            "ava/no-skip-test": "error",
            "ava/no-statement-after-end": "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/test-ended": "error",
            "ava/test-title": ["error", "if-multiple"],
            "ava/use-t-well": "error",
            "ava/use-t": "error",
            "ava/use-test": "error",
            "ava/use-true-false": "error"
        }
    }
}

Rules

The rules will only activate in test files.

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": {
        "plugins": [
            "ava"
        ],
        "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.

Credit

License

MIT © Sindre Sorhus