Remove timer faking from functionWatcher tests #5151
+41
−22
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.
WHY are these changes introduced?
Part of https://github.com/Shopify/shopify-functions/issues/481
This test was reported as flakey, so this attempts to fix it by removing the unnecessary timer faking.
WHAT is this pull request doing?
Swaps out our timer faking with a more straightforward
waitFor
that just checks the last returned result from our hook function until it matches what we expect.I used
waitFor
fromcli-kit
'stesting/ui
, and had to add it to the public export.I figured this was fine, but if it's not I could also copy the code from it into our tests more directly.
I also looked at usePollAppLogsTest where we used a similar approach, but I chose to keep it as is over there since that test has a lot to do with timing, retries, and enqueued timers. It makes sense over there.
How to test your changes?
Post-release steps
N/A
Measuring impact
How do we know this change was effective? Please choose one:
Checklist