Skip to content

Commit 33e6737

Browse files
committed
docs(prefer-hooks-on-top): improve code example
1 parent 1b842d1 commit 33e6737

File tree

1 file changed

+63
-47
lines changed

1 file changed

+63
-47
lines changed

docs/rules/prefer-hooks-on-top.md

Lines changed: 63 additions & 47 deletions
Original file line numberDiff line numberDiff line change
@@ -11,47 +11,49 @@ Examples of **incorrect** code for this rule
1111

1212
describe('foo', () => {
1313
beforeEach(() => {
14-
//some hook code
14+
seedMyDatabase();
1515
});
16-
test('bar', () => {
17-
some_fn();
18-
});
19-
beforeAll(() => {
20-
//some hook code
21-
});
22-
test('bar', () => {
23-
some_fn();
16+
17+
it('accepts this input', () => {
18+
// ...
2419
});
25-
});
2620

27-
// Nested describe scenario
28-
describe('foo', () => {
2921
beforeAll(() => {
30-
//some hook code
22+
createMyDatabase();
3123
});
32-
test('bar', () => {
33-
some_fn();
24+
25+
it('returns that value', () => {
26+
// ...
3427
});
35-
describe('inner_foo', () => {
28+
29+
describe('when the database has specific values', () => {
3630
beforeEach(() => {
37-
//some hook code
31+
seedMyDatabase('specific-fixture');
32+
});
33+
34+
it('accepts that input', () => {
35+
// ...
3836
});
39-
test('inner bar', () => {
40-
some_fn();
37+
38+
it('throws an error', () => {
39+
// ...
4140
});
42-
test('inner bar', () => {
43-
some_fn();
41+
42+
afterEach(() => {
43+
clearMyFixture('specific-fixture');
4444
});
4545
beforeAll(() => {
46-
//some hook code
46+
createMyFixture('specific-fixture');
4747
});
48-
afterAll(() => {
49-
//some hook code
50-
});
51-
test('inner bar', () => {
52-
some_fn();
48+
49+
it('logs a message', () => {
50+
// ...
5351
});
5452
});
53+
54+
afterAll(() => {
55+
clearMyDatabase();
56+
});
5557
});
5658
```
5759

@@ -61,35 +63,49 @@ Examples of **correct** code for this rule
6163
/* eslint jest/prefer-hooks-on-top: "error" */
6264

6365
describe('foo', () => {
64-
beforeEach(() => {
65-
//some hook code
66+
beforeAll(() => {
67+
createMyDatabase();
6668
});
6769

68-
// Not affected by rule
69-
someSetup();
70-
71-
afterEach(() => {
72-
//some hook code
70+
beforeEach(() => {
71+
seedMyDatabase();
7372
});
74-
test('bar', () => {
75-
some_fn();
73+
74+
afterAll(() => {
75+
clearMyDatabase();
7676
});
77-
});
7877

79-
// Nested describe scenario
80-
describe('foo', () => {
81-
beforeEach(() => {
82-
//some hook code
78+
it('accepts this input', () => {
79+
// ...
8380
});
84-
test('bar', () => {
85-
some_fn();
81+
82+
it('returns that value', () => {
83+
// ...
8684
});
87-
describe('inner_foo', () => {
85+
86+
describe('when the database has specific values', () => {
87+
beforeAll(() => {
88+
createMyFixture('specific-fixture');
89+
});
90+
8891
beforeEach(() => {
89-
//some hook code
92+
seedMyDatabase('specific-fixture');
9093
});
91-
test('inner bar', () => {
92-
some_fn();
94+
95+
afterEach(() => {
96+
clearMyFixture('specific-fixture');
97+
});
98+
99+
it('accepts that input', () => {
100+
// ...
101+
});
102+
103+
it('throws an error', () => {
104+
// ...
105+
});
106+
107+
it('logs a message', () => {
108+
// ...
93109
});
94110
});
95111
});

0 commit comments

Comments
 (0)