test: Migrate all packages from jest
to vitest
#13
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Jest's ESM support sucks (ref) and is held up on some interminable issues related to Node VMs (ref). I was impressed with
vite
andvitest
following my experience implementing #8, and after I discovered thatvitest
has a browser mode for unit tests—which will ultimately allow us to test underses
in an actual browser environment—I was sold.This migrates the entire repo from
jest
tovitest
. They work very similarly, exceptvitest
has a number of benefits overjest
, such as not polluting the global namespace by default. I tried running some tests underses
with lockdown in the browser, and it worked perfectly. However, it's held up on rewriting tests that rely on JSDOM, so we're tracking that work in #12.Testing
To test this locally, just try running the
package.json
test scripts in any package, including the root.