Unverified Commit 18ed041d authored by Alexandre Ardhuin's avatar Alexandre Ardhuin Committed by GitHub

handler can be null in platform_channel (#63057)

parent e9117c19
...@@ -67,7 +67,7 @@ class BasicMessageChannel<T> { ...@@ -67,7 +67,7 @@ class BasicMessageChannel<T> {
/// ///
/// The handler's return value is sent back to the platform plugins as a /// The handler's return value is sent back to the platform plugins as a
/// message reply. It may be null. /// message reply. It may be null.
void setMessageHandler(Future<T> handler(T message)) { void setMessageHandler(Future<T> Function(T message)? handler) {
if (handler == null) { if (handler == null) {
binaryMessenger.setMessageHandler(name, null); binaryMessenger.setMessageHandler(name, null);
} else { } else {
...@@ -88,7 +88,7 @@ class BasicMessageChannel<T> { ...@@ -88,7 +88,7 @@ class BasicMessageChannel<T> {
/// ///
/// This is intended for testing. Messages intercepted in this manner are not /// This is intended for testing. Messages intercepted in this manner are not
/// sent to platform plugins. /// sent to platform plugins.
void setMockMessageHandler(Future<T> handler(T message)) { void setMockMessageHandler(Future<T> Function(T message) handler) {
if (handler == null) { if (handler == null) {
binaryMessenger.setMockMessageHandler(name, null); binaryMessenger.setMockMessageHandler(name, null);
} else { } else {
...@@ -390,7 +390,7 @@ class MethodChannel { ...@@ -390,7 +390,7 @@ class MethodChannel {
/// ///
/// This method is useful for tests or test harnesses that want to assert the /// This method is useful for tests or test harnesses that want to assert the
/// handler for the specified channel has not been altered by a previous test. /// handler for the specified channel has not been altered by a previous test.
bool checkMethodCallHandler(Future<dynamic> handler(MethodCall call)) => _methodChannelHandlers[this] == handler; bool checkMethodCallHandler(Future<dynamic> Function(MethodCall call)? handler) => _methodChannelHandlers[this] == handler;
/// Sets a mock callback for intercepting method invocations on this channel. /// Sets a mock callback for intercepting method invocations on this channel.
/// ///
...@@ -410,7 +410,7 @@ class MethodChannel { ...@@ -410,7 +410,7 @@ class MethodChannel {
/// return value of the call. The value will be encoded using /// return value of the call. The value will be encoded using
/// [MethodCodec.encodeSuccessEnvelope], to act as if platform plugin had /// [MethodCodec.encodeSuccessEnvelope], to act as if platform plugin had
/// returned that value. /// returned that value.
void setMockMethodCallHandler(Future<dynamic> handler(MethodCall call)) { void setMockMethodCallHandler(Future<dynamic> Function(MethodCall call)? handler) {
_methodChannelMockHandlers[this] = handler; _methodChannelMockHandlers[this] = handler;
binaryMessenger.setMockMessageHandler( binaryMessenger.setMockMessageHandler(
name, name,
...@@ -423,7 +423,7 @@ class MethodChannel { ...@@ -423,7 +423,7 @@ class MethodChannel {
/// ///
/// This method is useful for tests or test harnesses that want to assert the /// This method is useful for tests or test harnesses that want to assert the
/// handler for the specified channel has not been altered by a previous test. /// handler for the specified channel has not been altered by a previous test.
bool checkMockMethodCallHandler(Future<dynamic> handler(MethodCall call)) => _methodChannelMockHandlers[this] == handler; bool checkMockMethodCallHandler(Future<dynamic> Function(MethodCall call)? handler) => _methodChannelMockHandlers[this] == handler;
Future<ByteData?> _handleAsMethodCall(ByteData? message, Future<dynamic> handler(MethodCall call)) async { Future<ByteData?> _handleAsMethodCall(ByteData? message, Future<dynamic> handler(MethodCall call)) async {
final MethodCall call = codec.decodeMethodCall(message); final MethodCall call = codec.decodeMethodCall(message);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment