Repository navigation
test(web): the real chat-list tests wait for the list to settle, not a fixed pause - #735
Merged
Merged
Conversation
…a fixed pause Three tests on the real chat list failed now and then on CI and never on a Mac: "catches up and follows when a hold that began up the thread ends at the bottom" (back at the end after scrolling up), "keeps streamed markdown from bouncing" (a 4 px drop), and "keeps a note in progress" (the actions never opened). The first two failed right after a fixed 300 ms pause meant to let the list finish its first layout; on a busy runner it can still be working then. The selection tests select text right after the list scrolls, when it may still be building rows again. They now wait until the list's scroll position and height hold still, and the selection tests until the list stops adding and removing elements. The failures never reproduced in 59 tries each on CI (repeats and fresh tabs), so this removes the likely cause rather than a proven one; the failure messages now say what the list was doing, so a next failure explains itself.
|
The latest updates on your projects. Learn more about Vercel for GitHub. 1 Skipped Deployment
|
This branch was previously deployed
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.
Three tests in
MessagesTimeline.real-list.browser.tsxfailed now and then on CI (on main, and in the merge queue for #733 and #734), never on a Mac:expected 0 to be greater than 100);What I tried. I ran diagnostic branches on CI (by
workflow_dispatch, no PR) with these tests repeated 10, then 40 times, and then 8 fresh-tab copies of the file. 59 tries each, zero failures, so the cause is unproven. Along the way I ruled out web fonts (the tests don't load them) and the library's DOM re-sort (in this app the rows stay out of order, so it isn't what moves them).Change. The likely cause is timing at the start of each test:
waitForListToSettle) until scroll position and height hold still for 300 ms.renderLongChatnow also waits (waitForRowsToSettle) until the list stops adding and removing elements for 600 ms.The real-list file passes locally three times in a row (24/24); fmt, lint and typecheck pass.