Skip to content

Conversation

@bleroux
Copy link
Contributor

@bleroux bleroux commented Feb 16, 2024

Description

This PRs changes the default value for the platform parameter used to simulate key events.

With this PR, the default value is "web" on web, otherwise it is the operating system name retrieved from defaultTargetPlatform.

Previously, for methods in WidgetController, it defaulted to “web” on web, and “android” everywhere else. And for methods in KeyEventSimulator it defaulted to “web” on web, and the operating system that the test was running on everywhere else. Because the operating system was based on Platform.operatingSystem, it usually differed from the target platform the test was running on.

AFAIK, the platform parameter is only meaningful for simulating RawKeyEvent. Once RawKeyboard will be fully removed, the platform parameter won’t be needed.
@gspencergoog In the meantime, do you think it is worth merging this fix?

Related Issue

Fixes #133955

Tests

Adds one test.

@github-actions github-actions bot added a: tests "flutter test", flutter_test, or one of our tests framework flutter/packages/flutter repository. See also f: labels. labels Feb 16, 2024
@bleroux bleroux force-pushed the use_defaultTargetPlatform_for_key_event_simulation branch from f78ab4b to 68e3bf9 Compare February 16, 2024 18:15
@bleroux bleroux requested a review from gspencergoog February 16, 2024 18:41
@gspencergoog
Copy link
Contributor

In the meantime, do you think it is worth merging this fix?

Yes, this is all going to be irrelevant once the raw key event stuff is finally removed next January. But I think it's fine to do this now: it'll be used for a year or so at least.

Copy link
Contributor

@gspencergoog gspencergoog left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

32384589-a60f0e74-c078-11e7-9bc1-e5b5287aea9d

@bleroux
Copy link
Contributor Author

bleroux commented Feb 19, 2024

I'm currently investivating the customer test failures for this PR.
The failure is related to the modifier keys logic in RawKeyEventDataLinux.
I will post more details in the coming days.

@bleroux bleroux force-pushed the use_defaultTargetPlatform_for_key_event_simulation branch from 68e3bf9 to a91b82e Compare March 7, 2024 15:24
@bleroux bleroux added the autosubmit Merge PR when tree becomes green via auto submit App label Mar 7, 2024
@auto-submit auto-submit bot merged commit 471a828 into flutter:master Mar 7, 2024
@bleroux bleroux deleted the use_defaultTargetPlatform_for_key_event_simulation branch March 7, 2024 16:08
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Mar 7, 2024
auto-submit bot pushed a commit to flutter/packages that referenced this pull request Mar 7, 2024
flutter/flutter@8f84f3f...471a828

2024-03-07 [email protected] [flutter_test] Use defaultTargetPlatform for key events simulation (flutter/flutter#143579)
2024-03-07 [email protected] Roll Packages from 9b88dbc to 6701c9e (3 revisions) (flutter/flutter#144772)
2024-03-07 [email protected] Fix frameworks added to bundle multiple times instead of lipo (flutter/flutter#144688)
2024-03-07 [email protected] Roll Flutter Engine from 40a42796b129 to f8c3b2db8cd1 (1 revision) (flutter/flutter#144766)
2024-03-07 [email protected] Roll Flutter Engine from 0246484d2bae to 40a42796b129 (1 revision) (flutter/flutter#144765)
2024-03-07 [email protected] Roll Flutter Engine from 6c1751bd774e to 0246484d2bae (1 revision) (flutter/flutter#144756)
2024-03-07 [email protected] [flutter_test] Change KeyEventSimulator default transit mode (flutter/flutter#143847)
2024-03-07 [email protected] Roll Flutter Engine from 03ebd6460b83 to 6c1751bd774e (2 revisions) (flutter/flutter#144747)
2024-03-07 [email protected] Roll Flutter Engine from 8a859c5b3a2d to 03ebd6460b83 (2 revisions) (flutter/flutter#144746)
2024-03-07 [email protected] Roll Flutter Engine from 4f6ea31d1f25 to 8a859c5b3a2d (2 revisions) (flutter/flutter#144743)
2024-03-07 [email protected] Fix memory leak in `editable_gesture_test.dart` (flutter/flutter#144691)
2024-03-07 [email protected] Roll Flutter Engine from 53ddbdfc24e5 to 4f6ea31d1f25 (2 revisions) (flutter/flutter#144741)
2024-03-07 [email protected] Roll Flutter Engine from b2adf7471d3d to 53ddbdfc24e5 (1 revision) (flutter/flutter#144735)
2024-03-06 [email protected] Roll Flutter Engine from 31bbe61dfa0d to b2adf7471d3d (1 revision) (flutter/flutter#144732)
2024-03-06 [email protected] Roll Flutter Engine from 5bbac1a5c576 to 31bbe61dfa0d (3 revisions) (flutter/flutter#144724)
2024-03-06 [email protected] Run macOS test on `dev/integration_tests/ui` (flutter/flutter#142735)
2024-03-06 [email protected] Use wasm-compatible conditional import in timeline.dart, avoid emitting timeline events in SchedulerBinding (flutter/flutter#144682)
2024-03-06 [email protected] Roll Flutter Engine from 44405aedba13 to 5bbac1a5c576 (2 revisions) (flutter/flutter#144714)
2024-03-06 [email protected] Bring back firebase tests to prod (flutter/flutter#144703)
2024-03-06 [email protected] Roll Flutter Engine from 20037e385bda to 44405aedba13 (3 revisions) (flutter/flutter#144710)
2024-03-06 [email protected] Fix code sample failing in smoke test (flutter/flutter#144709)
2024-03-06 [email protected] Remove deprecated `errorColor` from `ThemeData` (flutter/flutter#144078)
2024-03-06 [email protected] make DevFSContent descendants immutable (flutter/flutter#144664)
2024-03-06 [email protected] [Impeller] measure GPU memory usage. (flutter/flutter#144575)
2024-03-06 [email protected] Roll Flutter Engine from 9aad0e93899b to 20037e385bda (1 revision) (flutter/flutter#144707)
2024-03-06 [email protected] Roll Flutter Engine from b6efe0dd88fe to 9aad0e93899b (2 revisions) (flutter/flutter#144702)
2024-03-06 [email protected] Update android templates to use target sdk 34 (flutter/flutter#144641)

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
@itsjustkevin itsjustkevin added the revert Autorevert PR (with "Reason for revert:" comment) label Mar 8, 2024
@auto-submit
Copy link
Contributor

auto-submit bot commented Mar 8, 2024

Time to revert pull request flutter/flutter/143579 has elapsed.
You need to open the revert manually and process as a regular pull request.

@auto-submit auto-submit bot removed the revert Autorevert PR (with "Reason for revert:" comment) label Mar 8, 2024
itsjustkevin added a commit to itsjustkevin/flutter that referenced this pull request Mar 8, 2024
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request May 14, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

a: tests "flutter test", flutter_test, or one of our tests autosubmit Merge PR when tree becomes green via auto submit App framework flutter/packages/flutter repository. See also f: labels.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Widget Tests] - Unpredictable behavior when simulated keys specify different platforms

3 participants