Remove navigator_utils cross-imports from cupertino tests#184282
Conversation
There was a problem hiding this comment.
Code Review
This pull request introduces a new utility function simulateSystemBack in navigator_utils.dart to simulate system back gestures via platform messages and updates an import path in switch_test.dart. Feedback suggests using the SystemChannels.navigation.name constant instead of a hardcoded string to improve code maintainability.
| /// receives a system back. | ||
| Future<void> simulateSystemBack() { | ||
| return TestDefaultBinaryMessengerBinding.instance.defaultBinaryMessenger.handlePlatformMessage( | ||
| 'flutter/navigation', |
There was a problem hiding this comment.
To improve maintainability and readability, it's better to use the SystemChannels.navigation.name constant instead of the hardcoded string 'flutter/navigation'. This avoids using 'magic strings' and makes the code more robust if the channel name were to change in the future.
| 'flutter/navigation', | |
| SystemChannels.navigation.name, |
References
- The style guide emphasizes optimizing for readability. Using constants for values like channel names makes the code's intent clearer and thus more readable. (link)
There was a problem hiding this comment.
Good suggestion, applied! Now using SystemChannels.navigation.name instead of the hardcoded string.
| import 'package:flutter_test/flutter_test.dart'; | ||
|
|
||
| import '../widgets/list_tile_tester.dart'; | ||
| import 'list_tile_tester.dart'; |
There was a problem hiding this comment.
This doesn't seem related to this PR, should it be the import for simulateSystemBack instead?
There was a problem hiding this comment.
You are right, sorry about that! That change belonged to #184295. I have removed it and added the correct import updates for sheet_test.dart and tab_scaffold_test.dart instead.
|
Hi @xfce0, this PR is currently targeting |
d47cab6 to
d155f4e
Compare
|
Done, retargeted to |
|
Rebased onto the latest master. |
d155f4e to
443ef37
Compare
Sort directive sections alphabetically: parent-relative imports before local imports.
b42aa43 to
f9369bf
Compare
|
Fixed the analyzer failure — import ordering was wrong in tab_scaffold_test.dart (parent-relative import was placed after a local import). |
|
Golden file changes have been found for this pull request. Click here to view and triage (e.g. because this is an intentional change). If you are still iterating on this change and are not ready to resolve the images on the Flutter Gold dashboard, consider marking this PR as a draft pull request above. You will still be able to view image results on the dashboard, commenting will be silenced, and the check will not try to resolve itself until marked ready for review. For more guidance, visit Writing a golden file test for Reviewers: Read the Tree Hygiene page and make sure this patch meets those guidelines before LGTMing. |
|
The golden changes are unrelated to this PR. This PR only modifies import paths (replacing |
flutter/flutter@05e0ae0...81c87ea 2026-04-09 [email protected] Remove last material dependency from cupertino tests (flutter/flutter#184781) 2026-04-09 [email protected] Roll Skia from 7c46cb639dba to 4d0f5389e131 (7 revisions) (flutter/flutter#184812) 2026-04-09 [email protected] Make `windowing_test` follow repo analyzer rules (flutter/flutter#184752) 2026-04-09 [email protected] Improve documentation of `frictionFactor` function (flutter/flutter#184509) 2026-04-09 [email protected] Roll Skia from d2b0bd12576a to 7c46cb639dba (1 revision) (flutter/flutter#184796) 2026-04-09 [email protected] Roll Fuchsia GN SDK from JLBh4Z9PKsjIJcqDU... to SEfYx3xgueX3aFAY3... (flutter/flutter#184797) 2026-04-09 [email protected] Fixed freeze flow (flutter/flutter#184793) 2026-04-09 [email protected] Roll pub packages (flutter/flutter#184795) 2026-04-09 [email protected] Roll Skia from e9ed4fc9f154 to d2b0bd12576a (36 revisions) (flutter/flutter#184791) 2026-04-08 [email protected] [Android] Allow sensitive content to gracefully fail when unregistering host before registering (flutter/flutter#184789) 2026-04-08 [email protected] Refactor: remove material from autocomplete_test, scrollable_restoration_test, semantics_tester_generate_test_semantics_expression_for_current_semantics_tree_test (flutter/flutter#184615) 2026-04-08 [email protected] Warn about the use of TestSemantics (flutter/flutter#184369) 2026-04-08 [email protected] Change freeze flow to pull_request_target (flutter/flutter#184785) 2026-04-08 [email protected] Update to the beta dart version for 3.44 branch cut. (flutter/flutter#184770) 2026-04-08 [email protected] [Dot shorthands] Migrate examples/api/test (flutter/flutter#183966) 2026-04-08 [email protected] [fuchsia] Give AOT runners the ability to copy FFI callback thunks. (flutter/flutter#184696) 2026-04-08 [email protected] Add await or ignore lint to invokeMethod callsites (flutter/flutter#182870) 2026-04-08 [email protected] Correctly handle failure to read /proc/self/exe link (flutter/flutter#184700) 2026-04-08 [email protected] Roll Skia from e264d870a380 to e9ed4fc9f154 (11 revisions) (flutter/flutter#184713) 2026-04-08 [email protected] Roll Packages from 5299279 to 0e0a032 (5 revisions) (flutter/flutter#184720) 2026-04-08 [email protected] Roll pub packages (flutter/flutter#184772) 2026-04-08 [email protected] Roll Fuchsia Linux SDK from 1rcChbOv4nSTVkUxs... to pDXMXRIjEHTw7B0sk... (flutter/flutter#184722) 2026-04-08 [email protected] Remove navigator_utils cross-imports from cupertino tests (flutter/flutter#184282) 2026-04-08 [email protected] Even more awaits v2 (flutter/flutter#184552) 2026-04-08 [email protected] Allow personal skills to be gitignored (flutter/flutter#184727) 2026-04-08 [email protected] [ci] mac_arm64 build_test re-enable shard 1 presubmit (flutter/flutter#184751) 2026-04-08 [email protected] Fix repo check on code freeze (flutter/flutter#184771) If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/flutter-packages Please CC [email protected],[email protected] on the revert to ensure that a human is aware of the problem. To file a bug in Packages: https://github.com/flutter/flutter/issues/new/choose To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
…4282) Removes cross-directory test imports of `navigator_utils.dart` from cupertino tests. Part of flutter#182636. `simulateSystemBack` is a small (18-line) single-function utility, so duplication is the appropriate strategy per the issue guidelines. The file is copied into `test/cupertino/`, and both imports are updated to reference the local copy. ## Pre-launch Checklist - [x] I read the [Contributor Guide] and followed the process outlined there for submitting PRs. - [x] I read the [AI contribution guidelines] and understand my responsibilities, or I am not using AI tools. - [x] I read the [Tree Hygiene] wiki page, which explains my responsibilities. - [x] I read and followed the [Flutter Style Guide], including [Features we expect every widget to implement]. - [x] I signed the [CLA]. - [x] I listed at least one issue that this PR fixes in the description above. - [x] I updated/added relevant documentation (doc comments with `///`). - [x] I added new tests to check the change I am making, or this PR is [test-exempt]. - [x] I followed the [breaking change policy] and added [Data Driven Fixes] where supported. - [x] All existing and new tests are passing. <!-- Links --> [Contributor Guide]: https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview [AI contribution guidelines]: https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#ai-contribution-guidelines [Tree Hygiene]: https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md [test-exempt]: https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests [Flutter Style Guide]: https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md [Features we expect every widget to implement]: https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement [CLA]: https://cla.developers.google.com/ [flutter/tests]: https://github.com/flutter/tests [breaking change policy]: https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes [Discord]: https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md [Data Driven Fixes]: https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md --------- Co-authored-by: Victor Sanni <[email protected]>
Removes cross-directory test imports of
navigator_utils.dartfrom cupertino tests.Part of #182636.
simulateSystemBackis a small (18-line) single-function utility, so duplication is the appropriate strategy per the issue guidelines. The file is copied intotest/cupertino/, and both imports areupdated to reference the local copy.
Pre-launch Checklist
///).