diff --git a/dev/integration_tests/external_ui/lib/main.dart b/dev/integration_tests/external_ui/lib/main.dart index 83e9b485ac..8711cf91f7 100644 --- a/dev/integration_tests/external_ui/lib/main.dart +++ b/dev/integration_tests/external_ui/lib/main.dart @@ -15,7 +15,7 @@ void main() { } class MyApp extends StatefulWidget { - const MyApp({Key key}) : super(key: key); + const MyApp({Key? key}) : super(key: key); @override State createState() => MyAppState(); @@ -27,17 +27,17 @@ enum FrameState { initial, slow, afterSlow, fast, afterFast } class MyAppState extends State with SingleTickerProviderStateMixin { int _widgetBuilds = 0; - FrameState _state; + FrameState _state = FrameState.initial; String _summary = ''; - IconData _icon; - double _flutterFrameRate; + IconData? _icon; + double _flutterFrameRate = 0; Future _summarizeStats() async { - final double framesProduced = await channel.invokeMethod('getProducedFrameRate'); - final double framesConsumed = await channel.invokeMethod('getConsumedFrameRate'); + final double? framesProduced = await channel.invokeMethod('getProducedFrameRate'); + final double? framesConsumed = await channel.invokeMethod('getConsumedFrameRate'); _summary = ''' -Produced: ${framesProduced.toStringAsFixed(1)}fps -Consumed: ${framesConsumed.toStringAsFixed(1)}fps +Produced: ${framesProduced?.toStringAsFixed(1)}fps +Consumed: ${framesConsumed?.toStringAsFixed(1)}fps Widget builds: $_widgetBuilds'''; } @@ -96,15 +96,15 @@ Widget builds: $_widgetBuilds'''; debugPrint('Awaiting calm (3 second pause)...'); await Future.delayed(const Duration(milliseconds: 3000)); debugPrint('Calibrating...'); - DateTime startTime; + late DateTime startTime; int tickCount = 0; - Ticker ticker; + Ticker? ticker; ticker = createTicker((Duration time) { tickCount += 1; if (tickCount == calibrationTickCount) { // about 10 seconds final Duration elapsed = DateTime.now().difference(startTime); - ticker.stop(); - ticker.dispose(); + ticker?.stop(); + ticker?.dispose(); setState(() { _flutterFrameRate = tickCount * 1000 / elapsed.inMilliseconds; debugPrint('Calibrated: frame rate ${_flutterFrameRate.toStringAsFixed(1)}fps.'); diff --git a/dev/integration_tests/external_ui/pubspec.yaml b/dev/integration_tests/external_ui/pubspec.yaml index 454f6226c3..cbd65186bb 100644 --- a/dev/integration_tests/external_ui/pubspec.yaml +++ b/dev/integration_tests/external_ui/pubspec.yaml @@ -2,7 +2,7 @@ name: external_ui description: A test of Flutter integrating external UIs. environment: - sdk: ">=2.0.0-dev.68.0 <3.0.0" + sdk: ">=2.12.0 <3.0.0" dependencies: flutter: diff --git a/dev/integration_tests/external_ui/test_driver/main_test.dart b/dev/integration_tests/external_ui/test_driver/main_test.dart index 96c3f0b36a..fc96e45429 100644 --- a/dev/integration_tests/external_ui/test_driver/main_test.dart +++ b/dev/integration_tests/external_ui/test_driver/main_test.dart @@ -13,7 +13,7 @@ const Duration samplingTime = Duration(seconds: 8); Future main() async { group('texture suite', () { - FlutterDriver driver; + late FlutterDriver driver; setUpAll(() async { driver = await FlutterDriver.connect(); @@ -32,9 +32,9 @@ Future main() async { await driver.waitFor(fab); final String calibrationResult = await driver.getText(summary); - final Match matchCalibration = calibrationRegExp.matchAsPrefix(calibrationResult); + final Match? matchCalibration = calibrationRegExp.matchAsPrefix(calibrationResult); expect(matchCalibration, isNotNull); - final double flutterFrameRate = double.parse(matchCalibration.group(1)); + final double flutterFrameRate = double.parse(matchCalibration?.group(1) ?? '0'); // Texture frame stats at 0.5x Flutter frame rate await driver.tap(fab); @@ -42,11 +42,11 @@ Future main() async { await driver.tap(fab); final String statsSlow = await driver.getText(summary); - final Match matchSlow = statsRegExp.matchAsPrefix(statsSlow); + final Match matchSlow = statsRegExp.matchAsPrefix(statsSlow)!; expect(matchSlow, isNotNull); - expect(double.parse(matchSlow.group(1)), closeTo(flutterFrameRate / 2.0, 5.0)); - expect(double.parse(matchSlow.group(2)), closeTo(flutterFrameRate / 2.0, 5.0)); - expect(int.parse(matchSlow.group(3)), 1); + expect(double.parse(matchSlow.group(1)!), closeTo(flutterFrameRate / 2.0, 5.0)); + expect(double.parse(matchSlow.group(2)!), closeTo(flutterFrameRate / 2.0, 5.0)); + expect(int.parse(matchSlow.group(3)!), 1); // Texture frame stats at 2.0x Flutter frame rate await driver.tap(fab); @@ -54,15 +54,15 @@ Future main() async { await driver.tap(fab); final String statsFast = await driver.getText(summary); - final Match matchFast = statsRegExp.matchAsPrefix(statsFast); + final Match matchFast = statsRegExp.matchAsPrefix(statsFast)!; expect(matchFast, isNotNull); - expect(double.parse(matchFast.group(1)), closeTo(flutterFrameRate * 2.0, 5.0)); - expect(double.parse(matchFast.group(2)), closeTo(flutterFrameRate, 10.0)); - expect(int.parse(matchFast.group(3)), 1); + expect(double.parse(matchFast.group(1)!), closeTo(flutterFrameRate * 2.0, 5.0)); + expect(double.parse(matchFast.group(2)!), closeTo(flutterFrameRate, 10.0)); + expect(int.parse(matchFast.group(3)!), 1); }); tearDownAll(() async { - driver?.close(); + driver.close(); }); }); }