Skip to content

Commit

Permalink
feat: updated
Browse files Browse the repository at this point in the history
  • Loading branch information
veritem committed Mar 29, 2023
1 parent eb9887a commit 8af7c70
Show file tree
Hide file tree
Showing 3 changed files with 37 additions and 2 deletions.
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -104,6 +104,7 @@ To use the all configuration, extend it in your `.eslintrc` file:
| [prefer-each](docs/rules/prefer-each.md) | Prefer `each` rather than manual loops | 🌐 | | |
| [prefer-equality-matcher](docs/rules/prefer-equality-matcher.md) | Suggest using the built-in quality matchers | 🌐 | | 💡 |
| [prefer-expect-resolves](docs/rules/prefer-expect-resolves.md) | Suggest using `expect().resolves` over `expect(await ...)` syntax | 🌐 | 🔧 | |
| [prefer-hooks-on-top](docs/rules/prefer-hooks-on-top.md) | Suggest having hooks before any test cases | 🌐 | | |
| [prefer-lowercase-title](docs/rules/prefer-lowercase-title.md) | Enforce lowercase titles | 🌐 | 🔧 | |
| [prefer-strict-equal](docs/rules/prefer-strict-equal.md) | Prefer strict equal over equal | 🌐 | | 💡 |
| [prefer-to-be](docs/rules/prefer-to-be.md) | Suggest using toBe() || 🔧 | |
Expand Down
31 changes: 31 additions & 0 deletions docs/rules/prefer-hooks-on-top.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
# Suggest having hooks before any test cases (`vitest/prefer-hooks-on-top`)

⚠️ This rule _warns_ in the 🌐 `all` config.

<!-- end auto-generated rule header -->
```ts
// bad

describe('foo', () => {
it('bar', () => {
// ...
})

beforeEach(() => {
// ...
})
})


// good

describe('foo', () => {
beforeEach(() => {
// ...
})

it('bar', () => {
// ...
})
})
```
7 changes: 5 additions & 2 deletions src/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ import preferEqualityMatcher, { RULE_NAME as preferEqualityMatcherName } from '.
import preferStrictEqual, { RULE_NAME as preferStrictEqualName } from './rules/prefer-strict-equal'
import preferExpectResolves, { RULE_NAME as preferExpectResolvesName } from './rules/prefer-expect-resolves'
import preferEach, { RULE_NAME as preferEachName } from './rules/prefer-each'
import preferHooksOnTop, { RULE_NAME as preferHooksOnTopName } from './rules/prefer-hooks-on-top'

const createConfig = (rules: Record<string, string>) => ({
plugins: ['vitest'],
Expand Down Expand Up @@ -77,7 +78,8 @@ const allRules = {
[preferEqualityMatcherName]: 'warn',
[preferStrictEqualName]: 'warn',
[preferExpectResolvesName]: 'warn',
[preferEachName]: 'warn'
[preferEachName]: 'warn',
[preferHooksOnTopName]: 'warn'
}

const recommended = {
Expand Down Expand Up @@ -127,7 +129,8 @@ export default {
[preferEqualityMatcherName]: preferEqualityMatcher,
[preferStrictEqualName]: preferStrictEqual,
[preferExpectResolvesName]: preferExpectResolves,
[preferEachName]: preferEach
[preferEachName]: preferEach,
[preferHooksOnTopName]: preferHooksOnTop
},
configs: {
all: createConfig(allRules),
Expand Down

0 comments on commit 8af7c70

Please sign in to comment.