blob: 468f1f77de6ed6ffa4728307cf93a24f3cfcfa15 [file] [log] [blame]
// 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);
}