Comments (11)
I am suggesting these:
- expect
expect
inside a test - enforce either
test
orit
, but not both - prefer either
toBeCalled
ortoHaveBeenCalled
(and so on) - prefer
await expect().resolves.toBe
/await expect().rejects.toBe
instead ofexpect(await ...).toBe
- enforce either chai style or jest style assertions
from eslint-plugin-vitest.
Maybe it is possible to add license and copy some rules from https://github.com/jest-community/eslint-plugin-jest.
I think most of the rules can be copied and modified a bit.
from eslint-plugin-vitest.
Would also be nice to have a rule like this:
https://github.com/jest-community/eslint-plugin-jest/blob/main/docs/rules/unbound-method.md
I'm running into this issue because the default ESLint version of this rule flags cases like this:
expect(my_func).toBeCalled()
from eslint-plugin-vitest.
Yes PRs are welcome
from eslint-plugin-vitest.
Thank you!
from eslint-plugin-vitest.
@veritem Can I work on lower case title
?
from eslint-plugin-vitest.
@veritem can I help out with some rules?
from eslint-plugin-vitest.
nice idea @sapphi-red , would you mind sending a PR?
from eslint-plugin-vitest.
Sorry, but I can't do it right now because my hands are full.
from eslint-plugin-vitest.
Behold, below: table showing which rules exist in which plugin! Table key:
- ✔️: exists in
eslint-plugin-jest
- ❌: does not exist in
eslint-plugin-jest
- ✅: exists in
eslint-plugin-vitest
Two questions:
- For the ❌ rules, did I just miss a renamed rule? Or should those be filed as issues on
eslint-plugin-jest
? no-jasmine-globals
looks to be pretty Jest-specific; are there other rules that don't need to be implimented ineslint-plugin-vitest
?
eslint-plugin-jest |
eslint-plugin-vitest ? |
|
---|---|---|
consistent-test-it |
✔️ | ✅ |
expect-expect |
✔️ | ✅ |
max-expects |
✔️ | ✅ |
max-nested-describe |
✔️ | ✅ |
no-alias-methods |
✔️ | ✅ |
no-commented-out-tests |
✔️ | ✅ |
no-conditional-expect |
✔️ | ✅ |
no-conditional-in-test |
✔️ | ✅ |
no-conditional-tests |
❌ | ✅ |
no-deprecated-functions |
✔️ | |
no-disabled-tests |
✔️ | ✅ |
no-done-callback |
✔️ | ✅ |
no-duplicate-hooks |
✔️ | ✅ |
no-export |
✔️ | |
no-focused-tests |
✔️ | ✅ |
no-hooks |
✔️ | ✅ |
no-identical-title |
✔️ | ✅ |
no-if |
✔️ (deprecated) | ❌ |
no-interpolation-in-snapshots |
✔️ | ✅ |
no-jasmine-globals |
✔️ | (not applicable) |
no-large-snapshots |
✔️ | ✅ |
no-mocks-import |
✔️ | ✅ |
no-restricted-jest-methods |
✔️ | ✅ |
no-restricted-matchers |
✔️ | ✅ |
no-skipped-tests |
❌ | ✅ |
no-standalone-expect |
✔️ | ✅ |
no-test-prefixes |
✔️ | ✅ |
no-test-return-statement |
✔️ | ✅ |
prefer-called-with |
✔️ | ✅ |
prefer-comparison-matcher |
✔️ | |
prefer-each |
✔️ | |
prefer-equality-matcher |
✔️ | |
prefer-expect-assertions |
✔️ | |
prefer-expect-resolves |
✔️ | |
prefer-hooks-in-order |
✔️ | |
prefer-hooks-on-top |
✔️ | |
prefer-lowercase-title |
✔️ | ✅ |
prefer-mock-promise-shorthand |
✔️ | |
prefer-snapshot-hint |
✔️ | |
prefer-spy-on |
✔️ | |
prefer-strict-equal |
✔️ | |
prefer-to-be |
✔️ | ✅ |
prefer-to-contain |
✔️ | |
prefer-to-have-length |
✔️ | |
prefer-todo |
✔️ | |
require-hook |
✔️ | |
require-to-throw-message |
✔️ | |
require-top-level-describe |
✔️ | |
valid-describe-callback |
✔️ | |
valid-expect-in-promise |
✔️ | |
valid-expect |
✔️ | ✅ |
valid-title |
✔️ | ✅ |
no-restricted-vi-methods |
❌ | ✅ |
from eslint-plugin-vitest.
thank you @JoshuaKGoldberg !!! will use this for future development
from eslint-plugin-vitest.
Related Issues (20)
- Feature request: `consistent-test-file-path` HOT 2
- Feature request: formatting rules HOT 1
- Invalid flat config HOT 2
- `bench` throw error `Prefer using it instead of test within describe`
- `expect-expect` fails even if `expectTypeOf` is present HOT 7
- Add require `describe`, `it` and `vi` import HOT 1
- Extend the `no-identical-title` rule to support `suite` test block pattern HOT 4
- Consider rule for naming mocks created with `vi.fn()` HOT 1
- Results of weekly scheduled smoke test HOT 1
- Throwing with ESLint 9 and flat config HOT 1
- [BUG] Converting circular structure to JSON HOT 5
- Please provide non-flat config HOT 6
- Declaration file missing plugin configs
- Results of weekly scheduled smoke test HOT 8
- TypeError: Converting circular structure to JSON when extend the recommended HOT 3
- Feature request: `prefer-vi-mocked` HOT 1
- tsc: Fix issues related to types HOT 1
- Readme docs is outdates
- Publish v0.6.0 to NPM HOT 19
- pnpm complains of unmet peer dependency. HOT 6
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from eslint-plugin-vitest.