widget_test.dart.tmpl 1.59 KB
Newer Older
1
// This is a basic Flutter widget test.
2 3
//
// To perform an interaction with a widget in your test, use the WidgetTester
4
// utility in the flutter_test package. For example, you can send tap and scroll
5 6
// gestures. You can also use WidgetTester to find child widgets in the widget
// tree, read text, and verify that the values of widget properties are correct.
7 8 9 10

import 'package:flutter/material.dart';
import 'package:flutter_test/flutter_test.dart';

11
{{^withFfi}}
12
import 'package:{{projectName}}/main.dart';
13
{{/withFfi}}
14

15
{{^withPluginHook}}
16 17 18
void main() {
  testWidgets('Counter increments smoke test', (WidgetTester tester) async {
    // Build our app and trigger a frame.
19
    await tester.pumpWidget(const MyApp());
20 21 22 23 24 25 26 27 28 29 30 31 32 33

    // Verify that our counter starts at 0.
    expect(find.text('0'), findsOneWidget);
    expect(find.text('1'), findsNothing);

    // Tap the '+' icon and trigger a frame.
    await tester.tap(find.byIcon(Icons.add));
    await tester.pump();

    // Verify that our counter has incremented.
    expect(find.text('0'), findsNothing);
    expect(find.text('1'), findsOneWidget);
  });
}
34
{{/withPluginHook}}
Daco Harkes's avatar
Daco Harkes committed
35
{{#withPlatformChannelPluginHook}}
36 37 38
void main() {
  testWidgets('Verify Platform version', (WidgetTester tester) async {
    // Build our app and trigger a frame.
39
    await tester.pumpWidget(const MyApp());
40 41 42

    // Verify that platform version is retrieved.
    expect(
43 44
      find.byWidgetPredicate(
        (Widget widget) => widget is Text &&
45
                           widget.data!.startsWith('Running on:'),
46 47 48
      ),
      findsOneWidget,
    );
49 50
  });
}
Daco Harkes's avatar
Daco Harkes committed
51
{{/withPlatformChannelPluginHook}}