• Stars
    star
    228
  • Rank 175,267 (Top 4 %)
  • Language
    JavaScript
  • License
    MIT License
  • Created almost 9 years ago
  • Updated 7 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

ESLint rules for AVA

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 โžก

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": "latest",
			"sourceType": "module"
		},
		"plugins": [
			"ava"
		],
		"rules": {
			"ava/assertion-arguments": "error",
			"ava/...": "error"
        }
    }
}

Rules

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.

More Repositories

1

ava

Node.js test runner that lets you develop with confidence ๐Ÿš€
JavaScript
20,694
star
2

ava-docs

Localized docs for AVA
501
star
3

awesome-ava

Awesome AVA resources
347
star
4

atom-ava

Snippets for AVA and run tests directly in the editor
JavaScript
103
star
5

typescript

Test TypeScript projects using AVA.
JavaScript
72
star
6

ava-codemods

Codemods for AVA
JavaScript
68
star
7

karma-ava

Karma plugin for AVA
JavaScript
63
star
8

gulp-ava

Run AVA tests
JavaScript
56
star
9

sublime-ava

Snippets for AVA
40
star
10

ava-snapshot-example

Example of snapshot testing a React component with AVA
JavaScript
36
star
11

babel-plugin-detective

Babel plugin that scans the AST for require calls and import statements
JavaScript
26
star
12

option-chain

Use fluent property chains in lieu of options objects
JavaScript
21
star
13

create-ava

Add AVA to your project
JavaScript
15
star
14

unique-temp-dir

Provides a uniquely named temp directory
JavaScript
13
star
15

babel-preset-stage-4

Efficiently applies the minimum of transforms to run stage 4 code on Node.js 6, 8 and 10
JavaScript
13
star
16

.github

12
star
17

babel

Babel provider for AVA.
JavaScript
11
star
18

get-port

Cooperative get-port implementation
TypeScript
9
star
19

ava-preact-init

Set up AVA for Preact
JavaScript
8
star
20

bucklescript

BuckleScript bindings for AVA
OCaml
8
star
21

grunt-ava

Run AVA tests
JavaScript
7
star
22

ava-files

DEPRECATED
JavaScript
7
star
23

cooperate

Plugin to enable cooperation between AVA test files
TypeScript
6
star
24

babel-plugin-ava-test-data

JavaScript
5
star
25

babel-preset-transform-test-files

Test file transforms as used by AVA
JavaScript
3
star
26

babel-plugin-throws-helper

Babel plugin for protecting against improper use of `t.throws()` in AVA
JavaScript
3
star
27

require-precompiled

Require extension that allows for caching/precompiling
JavaScript
2
star
28

ava-assert

[DEPRECATED] AVA's core assertion library
JavaScript
2
star
29

ava-colors

[DEPRECATED] A common set of colors for AVA
JavaScript
1
star
30

tap-emitter

JavaScript
1
star
31

test

A package that wraps AVA so AVA can use AVA to test AVA ๐Ÿคฏ
JavaScript
1
star