jest/valid-describe-callback Correctness
What it does
This rule validates that the second parameter of a describe()
function is a callback function. This callback function:
- should not be async
- should not contain any parameters
- should not contain any
return
statements
Why is this bad?
Using an improper describe()
callback function can lead to unexpected test errors.
Example
javascript
// Async callback functions are not allowed
describe("myFunction()", async () => {
// ...
});
// Callback function parameters are not allowed
describe("myFunction()", (done) => {
// ...
});
// Returning a value from a describe block is not allowed
describe("myFunction", () =>
it("returns a truthy value", () => {
expect(myFunction()).toBeTruthy();
}));
This rule is compatible with eslint-plugin-vitest, to use it, add the following configuration to your .eslintrc.json
:
json
{
"rules": {
"vitest/valid-describe-callback": "error"
}
}