Repository navigation
test: wait on conditions instead of fixed delays in timing-sensitive tests - #64
Merged
Merged
Conversation
…tests Four tests failed intermittently on loaded CI runners and turned the develop pipeline red in three of its last five runs: - MalformedJsonRecovery slept 100 ms after each write and then inspected the emission list by index. It now waits for the empty object before writing the valid content, and for the recovered content afterwards. - The shared-change-stream test compared emission counts while a file-system event could still be on its way to the second subscriber. It now waits for equal counts on the final value. - The per-query debounce test asserted an ordering of emission counts that depends on how writes fall into the debounce windows. It keeps what must hold: neither query misses the final state. Renamed to say so. - The certificate folder rename test gave the watcher three seconds. A rename right after the watcher is built can be missed as an event and is then found by the monitor's 60-second audit pass; the deadline now covers that. Emissions are recorded in a lock-protected log, because they arrive on a watcher thread while the test thread reads them. The wait helper's default timeout is 15 seconds; it only bounds a hung test. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
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.
Summary
Four tests failed intermittently on loaded CI runners;
Develop - Pushwas red in three of its last five runs because of them. No product code changes.FileProviderStressTests.MalformedJsonRecovery_…FileProviderMultiQueryTests.SingleProvider_MultipleQueries_SameFile_ShareChangeStreamFileProviderMultiQueryTests.SingleProvider_DifferentDebouncePerQuery_IndependentThrottlingfast >= slowemission counts, which depends on how writes fall into the debounce windowsCertificateFolderTests.FolderRename_DetectsNewCertificatesAlso: emissions are recorded in a lock-protected
EmissionLog(they arrive on a watcher thread), and the provider test wait helper defaults to 15 s instead of 2 s.Test plan
Type!=Performance) 3× in a row — all green🤖 Generated with Claude Code