webhook/node_modules/eslint-plugin-jest/docs/rules/no-duplicate-hooks.md
2020-08-26 09:57:08 +10:00

75 lines
1.2 KiB
Markdown

# Disallow duplicate setup and teardown hooks (`no-duplicate-hooks`)
A `describe` block should not contain duplicate hooks.
## Rule Details
Examples of **incorrect** code for this rule
```js
/* eslint jest/no-duplicate-hooks: "error" */
describe('foo', () => {
beforeEach(() => {
// some setup
});
beforeEach(() => {
// some setup
});
test('foo_test', () => {
// some test
});
});
// Nested describe scenario
describe('foo', () => {
beforeEach(() => {
// some setup
});
test('foo_test', () => {
// some test
});
describe('bar', () => {
test('bar_test', () => {
afterAll(() => {
// some teardown
});
afterAll(() => {
// some teardown
});
});
});
});
```
Examples of **correct** code for this rule
```js
/* eslint jest/no-duplicate-hooks: "error" */
describe('foo', () => {
beforeEach(() => {
// some setup
});
test('foo_test', () => {
// some test
});
});
// Nested describe scenario
describe('foo', () => {
beforeEach(() => {
// some setup
});
test('foo_test', () => {
// some test
});
describe('bar', () => {
test('bar_test', () => {
beforeEach(() => {
// some setup
});
});
});
});
```