The engine roll here #122942 was reverted due to failures on framework CI here https://ci.chromium.org/ui/p/flutter/builders/prod/Linux%20framework_tests_libraries/10172/overview, which has many failures of tests in
Flagging folks with engine commits in that range that seem text related: @flar @LongCatIsLooong @loic-sharma and @jason-simmons to take a look at the Skia rolls to see if there's anything suspicious in them.
This failure was caused by ordering dependencies in the
material/text_field_test.dart tests and does not appear to be related to the engine roll.
The tests started failing when the daily test order changed to
The tests run successfully with the #122942 roll and yesterday's seed value (
These tests depend on execution order due to the interaction between
debugDefaultTargetPlatformOverride and the
_kFallbackTheme is a lazily initialized static
ThemeData. The fallback theme does not explicitly specify a platform, so the
ThemeData constructor sets its
platform based on the current value of
Some of the tests in
TargetPlatformVariant to temporarily override the target platform. So the platform of the fallback theme will depend on which override was in effect the first time
_kFallbackTheme was accessed and initialized.
Later tests may depend on platform-specific behaviors (for example, tests of haptics assume they are running on a platform that enables haptics). These tests will fail if they use the fallback theme and it is bound to an unexpected platform.
@Hixie @goderbauer What is the best way to fix this?
Is there a way for the test infrastructure to ensure that
_kFallbackTheme is initialized for the Android platform, which is specified as the default for the test environment?
Or do tests need to avoid instantiating anything that would depend on the fallback theme?
|Issue Title||Created Date||Updated Date|