button_tap_test.dart 1.07 KB
Newer Older
1 2 3 4 5
// Copyright 2017 The Chromium 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_driver/flutter_driver.dart';
6
import 'package:test/test.dart' hide TypeMatcher, isInstanceOf;
7 8 9 10 11 12 13 14 15 16 17 18 19 20 21

void main() {
  group('button tap test', () {
    FlutterDriver driver;

    setUpAll(() async {
      driver = await FlutterDriver.connect();
    });

    tearDownAll(() async {
      if (driver != null)
        driver.close();
    });

    test('tap on the button, verify result', () async {
22 23
      final SerializableFinder batteryLevelLabel =
          find.byValueKey('Battery level label');
24
      expect(batteryLevelLabel, isNotNull);
25

26
      final SerializableFinder button = find.text('Refresh');
27 28
      await driver.waitFor(button);
      await driver.tap(button);
29

30
      String batteryLevel;
31
      while (batteryLevel == null || batteryLevel.contains('unknown')) {
32 33
        batteryLevel = await driver.getText(batteryLevelLabel);
      }
34 35

      expect(batteryLevel.contains('%'), isTrue);
36 37
    });
  });
38
}