1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
// Copyright 2014 The Flutter 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';
import 'package:test/test.dart' hide TypeMatcher, isInstanceOf;
Future<void> main() async {
late FlutterDriver driver;
setUpAll(() async {
driver = await FlutterDriver.connect();
});
tearDownAll(() {
driver.close();
});
// Run `run_release_test.sh` to also test release engine deferred components code. This
// drive test runs as debug and thus only tests framework side deferred components handling.
test('Install and load deferred component', () async {
final String preloadText = await driver.getText(find.byValueKey('PreloadText'));
expect(preloadText, 'preload');
final SerializableFinder fab =
find.byValueKey('FloatingActionButton');
await driver.tap(fab);
final String placeholderText = await driver.getText(find.byValueKey('PlaceholderText'));
expect(placeholderText, 'placeholder');
await driver.waitFor(find.byValueKey('DeferredWidget'));
final String deferredText = await driver.getText(find.byValueKey('DeferredWidget'));
expect(deferredText, 'DeferredWidget');
await driver.waitFor(find.byValueKey('DeferredImage'));
}, timeout: Timeout.none);
}