Fix flaky login provider picker focus assertion (#410)#416
Merged
Conversation
alejandro-ao
approved these changes
Jul 21, 2026
alejandro-ao
left a comment
Collaborator
There was a problem hiding this comment.
Reviewed in an isolated worktree (see prior review). Test-only change; wait_for_scheduled_animations() is a correct, stronger flush than pause() under Textual 8.2.8; no coverage loss. Re-ran the two affected tests 10x plus the full login subset — all green. Full CI parity (pytest 1053 passed, ruff, format, mypy) verified locally after merging latest main into the branch.
alejandro-ao
approved these changes
Jul 21, 2026
alejandro-ao
left a comment
Collaborator
There was a problem hiding this comment.
Re-approving after branch sync with latest main (daab3b9). Content unchanged from prior approval; CI green, login subset re-verified locally.
alejandro-ao
approved these changes
Jul 21, 2026
alejandro-ao
left a comment
Collaborator
There was a problem hiding this comment.
Re-approving after sync with main (8c45bff). CI green; change content identical to prior approvals.
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.
Resolves #410.
This PR implements the second approach outlined in the issue to fix the flaky focus assertion on the login provider picker screen:
Separation of Concerns: Removed the flaky assert search.has_focus check from the data filtering test (test_tui_login_api_provider_picker_filters_by_name_and_display_name), as filtering behavior doesn't rely on focus states. Changed pilot.pause() calls to pilot.wait_for_scheduled_animations() to flush asynchronous filter events reliably.
Dedicated Focus Test: Added a dedicated autofocus test (test_tui_login_provider_search_autofocus) that utilizes native event flushing to test focus state behavior independently.
The isolated tests passed completely clean locally across consecutive test runs.
cc @ShreyanshVaibhaw — since this issue primarily popped up on your environment, could you check out this branch and verify if it permanently kills the flake on your machine?
Bash