aves_mio/.flutter/packages/flutter/test/services/binding_lifecycle_test.dart
Fabio Micheluz 2c988f959b
Some checks are pending
Quality check / Flutter analysis (push) Waiting to run
Quality check / CodeQL analysis (java-kotlin) (push) Waiting to run
first commit
2026-02-19 13:25:23 +01:00

49 lines
1.5 KiB
Dart

// Copyright 2014 The Flutter Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
import 'package:flutter/foundation.dart';
import 'package:flutter/scheduler.dart';
import 'package:flutter/services.dart';
import 'package:flutter_test/flutter_test.dart';
class _TestBinding extends BindingBase with SchedulerBinding, ServicesBinding {
@override
Future<void> initializationComplete() async {
return super.initializationComplete();
}
@override
TestDefaultBinaryMessenger get defaultBinaryMessenger =>
super.defaultBinaryMessenger as TestDefaultBinaryMessenger;
@override
TestDefaultBinaryMessenger createBinaryMessenger() {
Future<ByteData?> keyboardHandler(ByteData? message) async {
return const StandardMethodCodec().encodeSuccessEnvelope(<int, int>{1: 1});
}
return TestDefaultBinaryMessenger(
super.createBinaryMessenger(),
outboundHandlers: <String, MessageHandler>{'flutter/keyboard': keyboardHandler},
);
}
}
void main() {
final binding = _TestBinding();
test('can send message on completion of binding initialization', () async {
var called = false;
binding.defaultBinaryMessenger.setMockMethodCallHandler(SystemChannels.platform, (
MethodCall method,
) async {
if (method.method == 'System.initializationComplete') {
called = true;
}
return null;
});
await binding.initializationComplete();
expect(called, isTrue);
});
}