An experimental ESLint runner for Jest
Install jest
(it needs Jest 21+) and jest-runner-eslint
yarn add --dev jest jest-runner-eslint
# or with NPM
npm install --save-dev jest jest-runner-eslint
In your package.json
{
"jest": {
"runner": "jest-runner-eslint"
}
}
Or in jest.config.js
module.exports = {
runner: 'jest-runner-eslint',
}
yarn jest
This project uses cosmiconfig, so you can provide config via:
- a
jest-runner-eslint
property in yourpackage.json
- a
jest-runner-eslint.config.js
JS file - a
.jest-runner-eslintrc
JSON file
In package.json
{
"jest-runner-eslint": {
"cliOptions": {
// Options here
}
}
}
or in jest-runner-eslint.config.js
module.exports = {
cliOptions: {
// Options here
}
}
jest-runner-eslint maps a lot of ESLint CLI arguments to config options. For example --fix
is cliOptions.fix
option | default | example |
---|---|---|
cacheLocation | .eslintcache |
"cacheLocation": "/path/to/cache" |
config | null |
"config": "/path/to/config" |
env | null |
"env": "mocha" or "env": ["mocha", "other"] |
ext | [".js"] |
"ext": ".jsx" or "ext": [".jsx", ".ts"] |
fix | false |
"fix": true |
global | [] |
"global": "it" or "global": ["it", "describe"] |
ignorePath | null |
"ignorePath": "/path/to/ignore" |
noEslintrc | false |
"noEslintrc": true |
noIgnore | false |
"noIgnore": true |
noInlineConfig | false |
"noInlineConfig": true |
parser | espree |
"parser": "flow" |
parserOptions | {} |
"parserOptions": { "myOption": true } |
plugin | [] |
"plugin": "prettier" or "plugin": ["pettier", "other"] |
rule | null |
"rule": "'quotes: [2, double]'" or "rule": ["quotes: [2, double]", "no-console: 2"] |
rulesdir | [] |
"rulesdir": "/path/to/rules/dir" or "env": ["/path/to/rules/dir", "/path/to/other"] |