chore(test): introduce some tests related to projects hooks #52
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.
Non-exhaustive first attempt to introduce some more e2e-like tests for hooks related to projects. The approach is more data-oriented as opposed to the recommended approach of being DOM-oriented, mostly becaues it felt easier to focus on the tests I was interested in. I could imagine that we'd want to add tests that also work with a DOM to test out how the hooks interact with things like suspense and error boundaries, but think that can be a follow-up if desired.
Would've liked the tests to have more assertions to guarantee the lifecycle of hooks (e.g. checking pending status for writes or isRefetching for reads), but I'm pretty sure I'm running into the issue highlighted in TanStack/query#4379. There isn't an easy way to inject an artificial delay for every mutation and query function that interfaces with core, which I can confirm solves the issue, but open to ideas on alternative approaches (maybe setting up a worker that has some ipc overhead??).