mirror of
https://github.com/flutter/samples.git
synced 2025-11-08 13:58:47 +00:00
Initial Commit for PlaformChannel Sample App (#453)
This commit is contained in:
19
platform_channels/test/home_page_test.dart
Normal file
19
platform_channels/test/home_page_test.dart
Normal file
@@ -0,0 +1,19 @@
|
||||
// Copyright 2020 The Flutter team. 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_test/flutter_test.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:platform_channels/main.dart';
|
||||
|
||||
void main() {
|
||||
group('HomePage tests', () {
|
||||
testWidgets('HomePage has multiple Text widgets', (tester) async {
|
||||
await tester.pumpWidget(MaterialApp(
|
||||
home: HomePage(),
|
||||
));
|
||||
|
||||
expect(find.byType(Text), findsWidgets);
|
||||
});
|
||||
});
|
||||
}
|
||||
49
platform_channels/test/src/method_channel_demo_test.dart
Normal file
49
platform_channels/test/src/method_channel_demo_test.dart
Normal file
@@ -0,0 +1,49 @@
|
||||
// Copyright 2020 The Flutter team. 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/material.dart';
|
||||
import 'package:flutter/services.dart';
|
||||
import 'package:flutter_test/flutter_test.dart';
|
||||
import 'package:platform_channels/src/method_channel_demo.dart';
|
||||
|
||||
void main() {
|
||||
group('MethodChannelDemo tests', () {
|
||||
setUpAll(() {
|
||||
final methodChannel = MethodChannel('methodChannelDemo');
|
||||
|
||||
// Register a mock MethodCallHandler.
|
||||
methodChannel.setMockMethodCallHandler((call) async {
|
||||
var count = call.arguments['count'] as int;
|
||||
if (call.method == 'increment') {
|
||||
return ++count;
|
||||
} else if (call.method == 'decrement') {
|
||||
return --count;
|
||||
}
|
||||
|
||||
return MissingPluginException();
|
||||
});
|
||||
});
|
||||
|
||||
testWidgets('MethodChannelDemo count test', (tester) async {
|
||||
await tester.pumpWidget(MaterialApp(
|
||||
home: MethodChannelDemo(),
|
||||
));
|
||||
|
||||
// Initially the value of count should be 0.
|
||||
expect(find.text('Value of count is 0'), findsOneWidget);
|
||||
|
||||
// Tap the RaisedButton with Icons.add to increment the value of count.
|
||||
await tester.tap(find.byIcon(Icons.add));
|
||||
await tester.pump();
|
||||
|
||||
expect(find.text('Value of count is 1'), findsOneWidget);
|
||||
|
||||
// Tap the RaisedButton with Icons.remove to decrement the value of count.
|
||||
await tester.tap(find.byIcon(Icons.remove));
|
||||
await tester.pump();
|
||||
|
||||
expect(find.text('Value of count is 0'), findsOneWidget);
|
||||
});
|
||||
});
|
||||
}
|
||||
Reference in New Issue
Block a user