Version 4.5#21
Open
souphan-adsk wants to merge 5 commits into
Open
Conversation
There was a problem hiding this comment.
Pull request overview
This PR introduces a testing hook in the retry mechanism for the ShotgunApiClient to support fake timer advancement during tests.
Key Changes:
- Added an
onRetrycallback handler to the retry configuration that allows tests to control timer behavior during retry operations
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Comment on lines
+209
to
+211
| // Wait for next tick to ensure async-retry has set up setTimeout | ||
| if (this.onAfterSleepSetup) { | ||
| await Promise.resolve(); // Let async-retry set up setTimeout first |
There was a problem hiding this comment.
[nitpick] The comment explains the technical detail but doesn't clarify why this is necessary for the testing hook to work correctly. Consider expanding the comment to explain that without this tick, the fake timer might not be ready when onAfterSleepSetup is called.
Suggested change
| // Wait for next tick to ensure async-retry has set up setTimeout | |
| if (this.onAfterSleepSetup) { | |
| await Promise.resolve(); // Let async-retry set up setTimeout first | |
| // Wait for next tick to ensure async-retry has set up setTimeout. | |
| // This is necessary because, in test environments using fake timers, | |
| // calling onAfterSleepSetup too early (before setTimeout is set up) | |
| // can cause the fake timer not to be ready, leading to unreliable tests. | |
| if (this.onAfterSleepSetup) { | |
| await Promise.resolve(); // Ensures setTimeout is set up before calling the hook |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Introduces a testing hook in the retry mechanism. Mainly to support fake timer advancement during tests.