blob: c40495ff08fa525794d38d77c4c7b493e5fe906d [file] [log] [blame]
Chris Bracken2d437f52017-05-11 14:29:20 -07001// Copyright 2017 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5import 'dart:async';
6import 'dart:io';
7
8import '../framework/adb.dart';
9import '../framework/framework.dart';
10import '../framework/ios.dart';
11import '../framework/utils.dart';
12
13Future<TaskResult> runEndToEndTests() async {
14 final Device device = await devices.workingDevice;
15 await device.unlock();
16 final String deviceId = device.deviceId;
17 final Directory testDirectory = dir('${flutterDirectory.path}/dev/integration_tests/ui');
18 await inDirectory(testDirectory, () async {
19 await flutter('packages', options: <String>['get']);
20
Michael Goderbauer4b957bf2017-06-15 18:23:37 -070021 if (deviceOperatingSystem == DeviceOperatingSystem.ios)
Chris Bracken2d437f52017-05-11 14:29:20 -070022 await prepareProvisioningCertificates(testDirectory.path);
Chris Bracken2d437f52017-05-11 14:29:20 -070023
Alexandre Ardhuineda03e22018-08-02 12:02:32 +020024 const List<String> entryPoints = <String>[
Yegorba5b5e72017-09-11 09:46:42 -070025 'lib/keyboard_resize.dart',
26 'lib/driver.dart',
Yegor91bd9bc2017-11-06 17:33:48 -080027 'lib/screenshot.dart',
Michael Goderbauer40900782018-06-15 10:11:10 -070028 'lib/keyboard_textfield.dart',
Yegorba5b5e72017-09-11 09:46:42 -070029 ];
30
31 for (final String entryPoint in entryPoints) {
32 await flutter('drive', options: <String>['--verbose', '-d', deviceId, entryPoint]);
33 }
Chris Bracken2d437f52017-05-11 14:29:20 -070034 });
35
Alexandre Ardhuind927c932018-09-12 08:29:29 +020036 return TaskResult.success(<String, dynamic>{});
Chris Bracken2d437f52017-05-11 14:29:20 -070037}