ci: fix flaky unit tests #231
Merged
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.
This PR addresses flaky unit tests resulting from race conditions in async batch check operations and timing precision issues in retry logic.
Fixed race conditions when running BatchCheck tests with parallelization
Replaced sequential mock responses with conditional responses based on request body content. I only noticed this after the package modernization and adoption of
uv
, wherepytest
is run with parallelization enabled by default, unlike previously.Improved retry timing stability
I adjusted the retry delay from exact matches to tolerance ranges of 1 or 2 seconds, and increased test timeouts to account for variance. I haven't encountered this locally, but have seen it pop up a few times on our CI during PR status checks.
References
openfga/sdk-generator#629
Review Checklist
main
Summary by CodeRabbit