diff --git a/dev/integration_tests/channels/lib/main.dart b/dev/integration_tests/channels/lib/main.dart index 2687147b48..3170c967d1 100644 --- a/dev/integration_tests/channels/lib/main.dart +++ b/dev/integration_tests/channels/lib/main.dart @@ -19,7 +19,7 @@ void main() { } class TestApp extends StatefulWidget { - const TestApp({Key key}) : super(key: key); + const TestApp({Key? key}) : super(key: key); @override State createState() => _TestAppState(); @@ -155,7 +155,7 @@ class _TestAppState extends State { () => basicJsonMessageToUnknownChannel(), () => basicStandardMessageToUnknownChannel(), ]; - Future _result; + Future? _result; int _step = 0; void _executeNextStep() { diff --git a/dev/integration_tests/channels/lib/src/basic_messaging.dart b/dev/integration_tests/channels/lib/src/basic_messaging.dart index 2a9f17c736..dfd516dda2 100644 --- a/dev/integration_tests/channels/lib/src/basic_messaging.dart +++ b/dev/integration_tests/channels/lib/src/basic_messaging.dart @@ -42,22 +42,22 @@ class ExtendedStandardMessageCodec extends StandardMessageCodec { } } -Future basicBinaryHandshake(ByteData message) async { - const BasicMessageChannel channel = - BasicMessageChannel( +Future basicBinaryHandshake(ByteData? message) async { + const BasicMessageChannel channel = + BasicMessageChannel( 'binary-msg', BinaryCodec(), ); - return _basicMessageHandshake( + return _basicMessageHandshake( 'Binary >${toString(message)}<', channel, message); } -Future basicStringHandshake(String message) async { - const BasicMessageChannel channel = BasicMessageChannel( +Future basicStringHandshake(String? message) async { + const BasicMessageChannel channel = BasicMessageChannel( 'string-msg', StringCodec(), ); - return _basicMessageHandshake('String >$message<', channel, message); + return _basicMessageHandshake('String >$message<', channel, message); } Future basicJsonHandshake(dynamic message) async { @@ -80,8 +80,8 @@ Future basicStandardHandshake(dynamic message) async { } Future basicBinaryMessageToUnknownChannel() async { - const BasicMessageChannel channel = - BasicMessageChannel( + const BasicMessageChannel channel = + BasicMessageChannel( 'binary-unknown', BinaryCodec(), ); @@ -89,7 +89,7 @@ Future basicBinaryMessageToUnknownChannel() async { } Future basicStringMessageToUnknownChannel() async { - const BasicMessageChannel channel = BasicMessageChannel( + const BasicMessageChannel channel = BasicMessageChannel( 'string-unknown', StringCodec(), ); @@ -122,11 +122,11 @@ Future basicStandardMessageToUnknownChannel() async { /// the original message. Future _basicMessageHandshake( String description, - BasicMessageChannel channel, + BasicMessageChannel channel, T message, ) async { final List received = []; - channel.setMessageHandler((T message) async { + channel.setMessageHandler((T? message) async { received.add(message); return message; }); @@ -150,7 +150,7 @@ Future _basicMessageHandshake( /// Sends a message on a channel that no one listens on. Future _basicMessageToUnknownChannel( String description, - BasicMessageChannel channel, + BasicMessageChannel channel, ) async { dynamic messageEcho = nothing; dynamic error = nothing; diff --git a/dev/integration_tests/channels/lib/src/test_step.dart b/dev/integration_tests/channels/lib/src/test_step.dart index 2a26467187..a354e74f3a 100644 --- a/dev/integration_tests/channels/lib/src/test_step.dart +++ b/dev/integration_tests/channels/lib/src/test_step.dart @@ -44,12 +44,9 @@ class TestStepResult { return const TestStepResult('Executing', nothing, TestStatus.pending); case ConnectionState.done: if (snapshot.hasData) { - return snapshot.data; - } else { - final TestStepResult result = snapshot.error as TestStepResult; - return result; + return snapshot.data!; } - break; + return snapshot.error! as TestStepResult; default: throw 'Unsupported state ${snapshot.connectionState}'; } diff --git a/dev/integration_tests/channels/pubspec.yaml b/dev/integration_tests/channels/pubspec.yaml index e97910a2ce..dcab1e7bea 100644 --- a/dev/integration_tests/channels/pubspec.yaml +++ b/dev/integration_tests/channels/pubspec.yaml @@ -2,7 +2,7 @@ name: channels description: Integration test for platform channels. 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/channels/test_driver/main_test.dart b/dev/integration_tests/channels/test_driver/main_test.dart index 42c4ed3158..dcba327161 100644 --- a/dev/integration_tests/channels/test_driver/main_test.dart +++ b/dev/integration_tests/channels/test_driver/main_test.dart @@ -7,7 +7,7 @@ import 'package:test/test.dart' hide TypeMatcher, isInstanceOf; void main() { group('channel suite', () { - FlutterDriver driver; + late FlutterDriver driver; setUpAll(() async { driver = await FlutterDriver.connect(); @@ -28,7 +28,7 @@ void main() { }, timeout: const Timeout(Duration(minutes: 1))); tearDownAll(() async { - driver?.close(); + driver.close(); }); }); } diff --git a/packages/flutter/lib/src/services/message_codecs.dart b/packages/flutter/lib/src/services/message_codecs.dart index cb5e4ac118..468658d779 100644 --- a/packages/flutter/lib/src/services/message_codecs.dart +++ b/packages/flutter/lib/src/services/message_codecs.dart @@ -154,7 +154,7 @@ class JSONMethodCodec implements MethodCodec { && (decoded[1] == null || decoded[1] is String)) throw PlatformException( code: decoded[0] as String, - message: decoded[1] as String, + message: decoded[1] as String?, details: decoded[2], ); if (decoded.length == 4 @@ -163,9 +163,9 @@ class JSONMethodCodec implements MethodCodec { && (decoded[3] == null || decoded[3] is String)) throw PlatformException( code: decoded[0] as String, - message: decoded[1] as String, + message: decoded[1] as String?, details: decoded[2], - stacktrace: decoded[3] as String, + stacktrace: decoded[3] as String?, ); throw FormatException('Invalid envelope: $decoded'); }