-
Notifications
You must be signed in to change notification settings - Fork 29.7k
Description
There's a discussion about LiveTestWidgetsFlutterBindingFramePolicy in my recent PR, where I believe we are clarifying some ambiguity about the documents for LiveTestWidgetsFlutterBindingFramePolicy.
There are two places explaining this enum
- https://api.flutter.dev/flutter/flutter_test/LiveTestWidgetsFlutterBindingFramePolicy-class.html
- https://api.flutter.dev/flutter/flutter_test/LiveTestWidgetsFlutterBinding/framePolicy.html
And it seems that fullyLive can or is intended to be used for effectively a synchronized (self-pumping) tester as requested in DesignDoc:synchronized-widgettester . The only thing is that it's still responding to pumps from both user calls of a test app or from some test gestures, which leads to extra frame requests besides those from engine and framework animation. This prevents a faithful simulation for performance test cases running on a device.
If I interpret the enum flags correctly, I think it would be necessary to introduce another flag that is between fullyLive and benchmark, say benchmarkLive, that ignores all pumps like benchmark but still responds to other framework frame request like animations, while still serves all engine frame requests like fullyLive. This would be helpful for test apps running on a device to simulate the device behavior.