test: improved driver test + shaders
This commit is contained in:
parent
d0fe4ee1c3
commit
0982726e4a
8 changed files with 25 additions and 7 deletions
|
@ -38,8 +38,9 @@ class CollectionGrid extends StatefulWidget {
|
|||
final String? settingsRouteKey;
|
||||
|
||||
const CollectionGrid({
|
||||
Key? key,
|
||||
this.settingsRouteKey,
|
||||
});
|
||||
}) : super(key: key);
|
||||
|
||||
@override
|
||||
_CollectionGridState createState() => _CollectionGridState();
|
||||
|
|
|
@ -46,7 +46,9 @@ class _CollectionPageState extends State<CollectionPage> {
|
|||
bottom: false,
|
||||
child: ChangeNotifierProvider<CollectionLens>.value(
|
||||
value: collection,
|
||||
child: CollectionGrid(),
|
||||
child: CollectionGrid(
|
||||
key: Key('collection-grid'),
|
||||
),
|
||||
),
|
||||
),
|
||||
),
|
||||
|
|
|
@ -284,7 +284,6 @@ class GridPainter extends CustomPainter {
|
|||
],
|
||||
);
|
||||
|
||||
// final topLeft = center.translate(-extent / 2, -extent / 2);
|
||||
final delta = extent + spacing;
|
||||
for (var i = -2; i <= 2; i++) {
|
||||
final dx = delta * i;
|
||||
|
|
|
@ -53,7 +53,7 @@ class FilterNavigationPage<T extends CollectionFilter> extends StatelessWidget {
|
|||
Widget build(BuildContext context) {
|
||||
final isMainMode = context.select<ValueNotifier<AppMode>, bool>((vn) => vn.value == AppMode.main);
|
||||
return FilterGridPage<T>(
|
||||
key: ValueKey('filter-grid-page'),
|
||||
key: Key('filter-grid-page'),
|
||||
appBar: SliverAppBar(
|
||||
title: InteractiveAppBarTitle(
|
||||
onTap: () => _goToSearch(context),
|
||||
|
|
File diff suppressed because one or more lines are too long
|
@ -16,7 +16,9 @@ void main() {
|
|||
// scan files copied from test assets
|
||||
// we do it via the app instead of broadcasting via ADB
|
||||
// because `MEDIA_SCANNER_SCAN_FILE` intent got deprecated in API 29
|
||||
PlatformStorageService().scanFile(p.join(targetPicturesDir, 'ipse.jpg'), 'image/jpeg');
|
||||
final storageService = PlatformStorageService();
|
||||
storageService.scanFile(p.join(targetPicturesDir, 'aves_logo.svg'), 'image/svg+xml');
|
||||
storageService.scanFile(p.join(targetPicturesDir, 'ipse.jpg'), 'image/jpeg');
|
||||
|
||||
configureAndLaunch();
|
||||
}
|
||||
|
|
|
@ -37,6 +37,7 @@ void main() {
|
|||
selectFirstAlbum();
|
||||
searchAlbum();
|
||||
showViewer();
|
||||
goToNextImage();
|
||||
toggleOverlay();
|
||||
zoom();
|
||||
showInfoMetadata();
|
||||
|
@ -154,12 +155,24 @@ void searchAlbum() {
|
|||
|
||||
void showViewer() {
|
||||
test('[collection] show viewer', () async {
|
||||
await driver.tap(find.byType('DecoratedThumbnail'));
|
||||
await driver.tap(find.descendant(
|
||||
of: find.byValueKey('collection-grid'),
|
||||
matching: find.byType('DecoratedThumbnail'),
|
||||
firstMatchOnly: true,
|
||||
));
|
||||
await driver.waitUntilNoTransientCallbacks();
|
||||
await Future.delayed(Duration(seconds: 2));
|
||||
});
|
||||
}
|
||||
|
||||
void goToNextImage() {
|
||||
test('[viewer] show next image', () async {
|
||||
final horizontalPageView = find.byValueKey('horizontal-pageview');
|
||||
await driver.scroll(horizontalPageView, -600, 0, Duration(milliseconds: 400));
|
||||
await Future.delayed(Duration(seconds: 2));
|
||||
});
|
||||
}
|
||||
|
||||
void toggleOverlay() {
|
||||
test('[viewer] toggle overlay', () async {
|
||||
final imageView = find.byValueKey('imageview');
|
||||
|
|
1
test_driver/assets/aves_logo.svg
Normal file
1
test_driver/assets/aves_logo.svg
Normal file
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" width="265.554" height="244.35"><path d="M0 10.84L166.56 177.4l43.778-43.775L87.553 10.84z" fill="#3f51b5"/><path d="M99.61 132.726V244.35l55.812-55.812z" fill="#4caf50"/><path d="M210.337 111.624V0l-55.812 55.812z" fill="#ffc107"/><path d="M265.554 39.465L226.089 0v39.465z" fill="#ff5722"/></svg>
|
After Width: | Height: | Size: 338 B |
Loading…
Reference in a new issue