Repository navigation
test(e2e): Section 1 connection form scenarios (#1050) - #1256
Merged
Merged
Conversation
Fixes the no_leading_underscores_for_local_identifiers analyzer info that failed Code Analysis on the form scenarios.
ZhuchkaTriplesix
marked this pull request as draft
October 10, 2026 06:09
…breaks The open Database type dropdown consumes taps outside its menu, and its items come before the type cards in the element tree, so tapping the last visible label hit a card and only closed the menu. Nothing was selected, Next stayed disabled and the form never opened; waitFor timed out silently and enterText failed with 'No element'. waitFor now asserts what it waited for, and pickType checks that Next left the type dialog. The EditableText finder is gone: enterText already looks for the EditableText under the field.
At the test window size the type grid is shorter than a card and the dialog footer covers the card's label, so a tap on the label hit the footer and nothing was selected. The card's centre is visible.
…stage type cards MySQL and Redis keep host empty for a URI connection and name it without the URI's host; every form moves the URI itself to the secure store, so that is where the scenario looks for the address. The MongoDB card is in the grid's second row, built in the cache extent and offstage for a default finder.
… the sidebar The MongoDB card is not built until the grid scrolls, so scrollUntilVisible brings its label in before the tap. The sidebar reloads from the database after the save, so the scenario waits for the new name instead of checking once.
… the URI The MongoDB form shows its URI field only after 'Use connection string' is checked.
ZhuchkaTriplesix
marked this pull request as ready for review
October 10, 2026 06:40
This was referenced Oct 10, 2026
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
Restores the connection-form scenarios of Section 1 (
e2e_connection_form_test.dart), dropped in 8b876c1, and makes them pass: a connection is created through the New connection dialog and the form of each type (PostgreSQL, MySQL, Redis, MongoDB by URI; SQLite through its fields).Why they failed (all five with
Bad state: No elementinenterText):find.text(label).hitTestable().last. The menu's items come before the grid cards in the element tree, so that was a card; the openMenuAnchorhasconsumeOutsideTap: true, so the tap only closed the menu.Nextstayed disabled, the form never opened, andwaitFortimed out silently.scrollUntilVisiblefirst.hostempty and do not name it after the URI's host. Every form moves the URI to the secure store, so the scenario checks it there, and waits for the new name in the sidebar.waitFornow asserts what it waited for andpickTypechecks thatNextleft the type dialog, so a future break names its step.Refs #1050 (folders and moving connections into them are still not covered).
Test plan