Skip to content

testing-library/eslint-plugin-jest-dom

Repository files navigation

eslint-plugin-jest-dom

Build Status All Contributors

lint rules for use with jest-dom.

Installation

You'll first need to install ESLint:

$ npm i eslint --save-dev 

Next, install eslint-plugin-jest-dom:

$ npm install eslint-plugin-jest-dom --save-dev 

Note: If you installed ESLint globally (using the -g flag) then you must also install eslint-plugin-jest-dom globally.

Usage

Add jest-dom to the plugins section of your .eslintrc configuration file. You can omit the eslint-plugin- prefix:

{ "plugins": ["jest-dom"] }

Then configure the rules you want to use under the rules section.

{ "rules": { "jest-dom/prefer-required": "error", "jest-dom/prefer-enabled-disabled": "error", "jest-dom/prefer-checked": "error", "jest-dom/prefer-to-have-attribute": "error", } }

Recommended Configuration

This plugin exports a recommended configuration that enforces good jest-dom practices (you can find more info about enabled rules in Supported Rules section).

To enable this configuration use the extends property in your .eslintrc config file:

{ "extends": ["plugin:jest-dom/recommended"] }

Supported Rules

✔️ indicates that a rule is recommended for all users.

🛠 indicates that a rule is fixable.

Name ✔️ 🛠 Description
prefer-checked ✔️ 🛠 prefer toBeChecked over checking attributes
prefer-enabled-disabled ✔️ 🛠 prefer toBeDisabled or toBeEnabled over checking attributes
prefer-required ✔️ 🛠 prefer toBeRequired over checking properties
prefer-to-have-attribute 🛠 prefer toHaveAttribute over checking getAttribute/hasAttribute

Contributors ✨

Thanks goes to these wonderful people (emoji key):

Ben Monro
Ben Monro

📖 💻 💡 ⚠️
Nick McCurdy
Nick McCurdy

💻 📖 ⚠️
Ernesto García
Ernesto García

📖

This project follows the all-contributors specification. Contributions of any kind welcome!

About

eslint rules for use with jest-dom

Resources

License

Code of conduct

Stars

Watchers

Forks

Contributors 28