-
Notifications
You must be signed in to change notification settings - Fork 29.8k
[web] More granular configuration of the test environment #168767
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
| const TestEnvironment.production() | ||
| : ignorePlatformMessages = false, | ||
| forceTestFonts = false, | ||
| keepSemanticsDisabledOnUpdate = false, | ||
| defaultToTestUrlStrategy = false; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| const TestEnvironment.production() | |
| : ignorePlatformMessages = false, | |
| forceTestFonts = false, | |
| keepSemanticsDisabledOnUpdate = false, | |
| defaultToTestUrlStrategy = false; | |
| const TestEnvironment.production() : super(); |
Right?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
or is it this()? 🤷
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could you clarify the suggestion? This works fine the way it is.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Oh nvm, I misread your suggestion. Let me see if that shorthand works.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
or is it
this()? 🤷
Yep, this() worked 👍
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Honestly, you could do the same for the other ctor. I kinda like fewer code paths for initialization, but might be personal preference.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You mean:
const TestEnvironment.flutterTester() : this(
ignorePlatformMessages: true,
forceTestFonts: true,
keepSemanticsDisabledOnUpdate: true,
defaultToTestUrlStrategy: true
);?
I prefer not to make this change, for one reason: when we add new booleans in the future, I want the compiler to remind us to set it to true in this ctor. If we convert this ctor to : this(...) then it's easy to forget to set the new booleans to true, and the compiler will not help us remember.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
yep! Again, personal preference.
| disableFontFallbacks = false, | ||
| keepSemanticsDisabledOnUpdate = false, | ||
| defaultToTestUrlStrategy = false; | ||
| const TestEnvironment.production() : this(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ugh. I guess the only issue with this is you now need to be careful changing the defaults or adding this to the default ctor. Where before it was separate and clear. 🤷
harryterkelsen
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
However, it looks like some tests are explicitly disabling the Flutter Tester environment and some are relying on TestEnvironment.production() being the default. But I think it makes sense to keep the tests as they are written and make this PR about modularizing the Flutter Tester environment behavior, and leaving the refactoring of tests so they all explicitly say how they expect the Flutter Tester environment to behave for later.
Roll Flutter from d733bea to 2773c0c (42 revisions) flutter/flutter@d733bea...2773c0c 2025-06-25 jason-simmons@users.noreply.github.com Log stack traces from exceptions thrown by devicelab test tasks (flutter/flutter#171165) 2025-06-25 mdebbar@google.com Revert "Move `web_long_running_tests_{1,5}_5` to `bringup`." (flutter/flutter#171100) 2025-06-25 bruno.leroux@gmail.com Add missing M3 tests for InputDecoration.isDense (flutter/flutter#171058) 2025-06-25 34871572+gmackall@users.noreply.github.com Add Android specific sub-step to validate the Android sdk path has no spaces (flutter/flutter#170829) 2025-06-24 737941+loic-sharma@users.noreply.github.com Update foundation library to export internal (flutter/flutter#170563) 2025-06-24 matanlurey@users.noreply.github.com Remove stale references to `Release-process.md` and `conductor` (flutter/flutter#171046) 2025-06-24 30870216+gaaclarke@users.noreply.github.com License cpp jun23 (flutter/flutter#171047) 2025-06-24 magder@google.com Add android-reviewers to CODEOWNERS (flutter/flutter#170157) 2025-06-24 srawlins@google.com Update tool/README.md regarding locally-built engine (flutter/flutter#171102) 2025-06-24 mdebbar@google.com [web] Align the PR triage process with the ecosystem's triage flow (flutter/flutter#171086) 2025-06-24 danny@tuppeny.com [flutter_tool] Migrate DAP off `ProcessUtils.writelnToStdinUnsafe` (flutter/flutter#171081) 2025-06-24 mdebbar@google.com [web] More granular configuration of the test environment (flutter/flutter#168767) 2025-06-24 127918074+salemiranloye@users.noreply.github.com Clean up Devfs_Web into separate files (flutter/flutter#170769) 2025-06-24 59215665+davidhicks980@users.noreply.github.com Add RawMenuAnchor animation callbacks (flutter/flutter#167806) 2025-06-24 jason-simmons@users.noreply.github.com Support wide gamut colors when applying a DlColor to an SkPaint (flutter/flutter#170613) 2025-06-24 nshahan@google.com Remove temporary workaround for web testing (flutter/flutter#170949) 2025-06-24 engine-flutter-autoroll@skia.org Roll Packages from 02770da to d9d3191 (6 revisions) (flutter/flutter#171075) 2025-06-24 15619084+vashworth@users.noreply.github.com Add LLDB warnings (flutter/flutter#170827) 2025-06-24 bruno.leroux@gmail.com Update FormField.initialValue documentation (flutter/flutter#171061) 2025-06-24 engine-flutter-autoroll@skia.org Roll Skia from 132cb2052565 to a462e701b493 (2 revisions) (flutter/flutter#171063) 2025-06-24 engine-flutter-autoroll@skia.org Roll Skia from f88706e3a863 to 132cb2052565 (4 revisions) (flutter/flutter#171057) 2025-06-24 zeqinjie@qq.com When maintainHintSize is false, hint is centered and aligned, it is different from the original one (flutter/flutter#168654) 2025-06-24 bruno.leroux@gmail.com Deprecate DropdownButtonFormField "value" parameter in favor of "initialValue" (flutter/flutter#170805) 2025-06-24 engine-flutter-autoroll@skia.org Roll Skia from af6feb799ea6 to f88706e3a863 (2 revisions) (flutter/flutter#171056) 2025-06-24 engine-flutter-autoroll@skia.org Roll Dart SDK from aebd78999b1a to d9edd9e7a634 (1 revision) (flutter/flutter#171053) 2025-06-24 engine-flutter-autoroll@skia.org Roll Skia from ae517eba0170 to af6feb799ea6 (1 revision) (flutter/flutter#171052) 2025-06-24 engine-flutter-autoroll@skia.org Roll Skia from a7735d517e6a to ae517eba0170 (9 revisions) (flutter/flutter#171049) 2025-06-24 rmacnak@google.com Enable interpretation fallback when unable to JIT on iOS. (flutter/flutter#170835) 2025-06-24 kevmoo@users.noreply.github.com Flutter test cleanup (flutter/flutter#170891) 2025-06-24 matanlurey@users.noreply.github.com Move `packages_autoroller` out of the carcass of `conductor`, delete `conductor` (flutter/flutter#171029) 2025-06-23 98614782+auto-submit[bot]@users.noreply.github.com Reverts "Don't strip symbols from `libapp.so` on android by default (#162464)" (flutter/flutter#171044) 2025-06-23 engine-flutter-autoroll@skia.org Roll Dart SDK from a09de0d3556c to aebd78999b1a (2 revisions) (flutter/flutter#171039) 2025-06-23 34871572+gmackall@users.noreply.github.com Don't strip symbols from `libapp.so` on android by default (flutter/flutter#162464) 2025-06-23 engine-flutter-autoroll@skia.org Roll Skia from 0311837abe86 to a7735d517e6a (12 revisions) (flutter/flutter#171037) 2025-06-23 bungeman@chromium.org Pass font scanner to font mgr that need it (flutter/flutter#170701) 2025-06-23 jacksongardner@google.com Make service worker tests more lenient. (flutter/flutter#170939) 2025-06-23 737941+loic-sharma@users.noreply.github.com Remove update CHANGELOG step from stable cherry pick process (flutter/flutter#171017) 2025-06-23 15619084+vashworth@users.noreply.github.com Include dev_dependencies in all builds for iOS and macOS (flutter/flutter#171015) 2025-06-23 matanlurey@users.noreply.github.com Move `web_long_running_tests_{1,5}_5` to `bringup`. (flutter/flutter#171026) 2025-06-23 muhatashim@google.com rename from announce to supportsAnnounce on engine (flutter/flutter#170618) 2025-06-23 137456488+flutter-pub-roller-bot@users.noreply.github.com Roll pub packages (flutter/flutter#171016) 2025-06-23 azat24680@gmail.com Enhance Text Contrast for WCAG AAA Compliance (flutter/flutter#170758) 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 ...
…8767) There's today a single boolean `debugEmulateFlutterTesterEnvironment` that determines certain behaviors in the engine to emulate how the Flutter Tester runs (more details at flutter#145779). With this PR: - Run all engine unit tests in production mode by default. - Give tests more granular control over which test behaviors to enable/disable (e.g. Ahem font). - Keep it easy for framework tests to enable all emulation behaviors. Fixes flutter#145779
Roll Flutter from d733bea to 2773c0c (42 revisions) flutter/flutter@d733bea...2773c0c 2025-06-25 jason-simmons@users.noreply.github.com Log stack traces from exceptions thrown by devicelab test tasks (flutter/flutter#171165) 2025-06-25 mdebbar@google.com Revert "Move `web_long_running_tests_{1,5}_5` to `bringup`." (flutter/flutter#171100) 2025-06-25 bruno.leroux@gmail.com Add missing M3 tests for InputDecoration.isDense (flutter/flutter#171058) 2025-06-25 34871572+gmackall@users.noreply.github.com Add Android specific sub-step to validate the Android sdk path has no spaces (flutter/flutter#170829) 2025-06-24 737941+loic-sharma@users.noreply.github.com Update foundation library to export internal (flutter/flutter#170563) 2025-06-24 matanlurey@users.noreply.github.com Remove stale references to `Release-process.md` and `conductor` (flutter/flutter#171046) 2025-06-24 30870216+gaaclarke@users.noreply.github.com License cpp jun23 (flutter/flutter#171047) 2025-06-24 magder@google.com Add android-reviewers to CODEOWNERS (flutter/flutter#170157) 2025-06-24 srawlins@google.com Update tool/README.md regarding locally-built engine (flutter/flutter#171102) 2025-06-24 mdebbar@google.com [web] Align the PR triage process with the ecosystem's triage flow (flutter/flutter#171086) 2025-06-24 danny@tuppeny.com [flutter_tool] Migrate DAP off `ProcessUtils.writelnToStdinUnsafe` (flutter/flutter#171081) 2025-06-24 mdebbar@google.com [web] More granular configuration of the test environment (flutter/flutter#168767) 2025-06-24 127918074+salemiranloye@users.noreply.github.com Clean up Devfs_Web into separate files (flutter/flutter#170769) 2025-06-24 59215665+davidhicks980@users.noreply.github.com Add RawMenuAnchor animation callbacks (flutter/flutter#167806) 2025-06-24 jason-simmons@users.noreply.github.com Support wide gamut colors when applying a DlColor to an SkPaint (flutter/flutter#170613) 2025-06-24 nshahan@google.com Remove temporary workaround for web testing (flutter/flutter#170949) 2025-06-24 engine-flutter-autoroll@skia.org Roll Packages from 02770da to d9d3191 (6 revisions) (flutter/flutter#171075) 2025-06-24 15619084+vashworth@users.noreply.github.com Add LLDB warnings (flutter/flutter#170827) 2025-06-24 bruno.leroux@gmail.com Update FormField.initialValue documentation (flutter/flutter#171061) 2025-06-24 engine-flutter-autoroll@skia.org Roll Skia from 132cb2052565 to a462e701b493 (2 revisions) (flutter/flutter#171063) 2025-06-24 engine-flutter-autoroll@skia.org Roll Skia from f88706e3a863 to 132cb2052565 (4 revisions) (flutter/flutter#171057) 2025-06-24 zeqinjie@qq.com When maintainHintSize is false, hint is centered and aligned, it is different from the original one (flutter/flutter#168654) 2025-06-24 bruno.leroux@gmail.com Deprecate DropdownButtonFormField "value" parameter in favor of "initialValue" (flutter/flutter#170805) 2025-06-24 engine-flutter-autoroll@skia.org Roll Skia from af6feb799ea6 to f88706e3a863 (2 revisions) (flutter/flutter#171056) 2025-06-24 engine-flutter-autoroll@skia.org Roll Dart SDK from aebd78999b1a to d9edd9e7a634 (1 revision) (flutter/flutter#171053) 2025-06-24 engine-flutter-autoroll@skia.org Roll Skia from ae517eba0170 to af6feb799ea6 (1 revision) (flutter/flutter#171052) 2025-06-24 engine-flutter-autoroll@skia.org Roll Skia from a7735d517e6a to ae517eba0170 (9 revisions) (flutter/flutter#171049) 2025-06-24 rmacnak@google.com Enable interpretation fallback when unable to JIT on iOS. (flutter/flutter#170835) 2025-06-24 kevmoo@users.noreply.github.com Flutter test cleanup (flutter/flutter#170891) 2025-06-24 matanlurey@users.noreply.github.com Move `packages_autoroller` out of the carcass of `conductor`, delete `conductor` (flutter/flutter#171029) 2025-06-23 98614782+auto-submit[bot]@users.noreply.github.com Reverts "Don't strip symbols from `libapp.so` on android by default (#162464)" (flutter/flutter#171044) 2025-06-23 engine-flutter-autoroll@skia.org Roll Dart SDK from a09de0d3556c to aebd78999b1a (2 revisions) (flutter/flutter#171039) 2025-06-23 34871572+gmackall@users.noreply.github.com Don't strip symbols from `libapp.so` on android by default (flutter/flutter#162464) 2025-06-23 engine-flutter-autoroll@skia.org Roll Skia from 0311837abe86 to a7735d517e6a (12 revisions) (flutter/flutter#171037) 2025-06-23 bungeman@chromium.org Pass font scanner to font mgr that need it (flutter/flutter#170701) 2025-06-23 jacksongardner@google.com Make service worker tests more lenient. (flutter/flutter#170939) 2025-06-23 737941+loic-sharma@users.noreply.github.com Remove update CHANGELOG step from stable cherry pick process (flutter/flutter#171017) 2025-06-23 15619084+vashworth@users.noreply.github.com Include dev_dependencies in all builds for iOS and macOS (flutter/flutter#171015) 2025-06-23 matanlurey@users.noreply.github.com Move `web_long_running_tests_{1,5}_5` to `bringup`. (flutter/flutter#171026) 2025-06-23 muhatashim@google.com rename from announce to supportsAnnounce on engine (flutter/flutter#170618) 2025-06-23 137456488+flutter-pub-roller-bot@users.noreply.github.com Roll pub packages (flutter/flutter#171016) 2025-06-23 azat24680@gmail.com Enhance Text Contrast for WCAG AAA Compliance (flutter/flutter#170758) 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 ...
There's today a single boolean
debugEmulateFlutterTesterEnvironmentthat determines certain behaviors in the engine to emulate how the Flutter Tester runs (more details at #145779).With this PR:
Fixes #145779