integration_ui.dart 1.2 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
// 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 'dart:async';
import 'dart:io';

import '../framework/adb.dart';
import '../framework/framework.dart';
import '../framework/ios.dart';
import '../framework/utils.dart';

Future<TaskResult> runEndToEndTests() async {
  final Device device = await devices.workingDevice;
  await device.unlock();
  final String deviceId = device.deviceId;
  final Directory testDirectory = dir('${flutterDirectory.path}/dev/integration_tests/ui');
18
  await inDirectory<void>(testDirectory, () async {
19 20
    await flutter('packages', options: <String>['get']);

21
    if (deviceOperatingSystem == DeviceOperatingSystem.ios)
22 23
      await prepareProvisioningCertificates(testDirectory.path);

24
    const List<String> entryPoints = <String>[
25 26
      'lib/keyboard_resize.dart',
      'lib/driver.dart',
27
      'lib/screenshot.dart',
28
      'lib/keyboard_textfield.dart',
29 30 31 32 33
    ];

    for (final String entryPoint in entryPoints) {
      await flutter('drive', options: <String>['--verbose', '-d', deviceId, entryPoint]);
    }
34 35
  });

36
  return TaskResult.success(<String, dynamic>{});
37
}