From da5be60130a57921255be77ba3e6b93228386464 Mon Sep 17 00:00:00 2001 From: Ian Hickson Date: Mon, 4 Dec 2017 13:53:23 -0800 Subject: [PATCH] Fix overlay_geometry manual test. (#13315) Somehow the test ended up checking for notification messages at the wrong depth. --- dev/manual_tests/lib/overlay_geometry.dart | 2 +- .../test/overlay_geometry_test.dart | 23 +++++++++++++++++++ 2 files changed, 24 insertions(+), 1 deletion(-) create mode 100644 dev/manual_tests/test/overlay_geometry_test.dart diff --git a/dev/manual_tests/lib/overlay_geometry.dart b/dev/manual_tests/lib/overlay_geometry.dart index a26a8d0570..b595c01544 100644 --- a/dev/manual_tests/lib/overlay_geometry.dart +++ b/dev/manual_tests/lib/overlay_geometry.dart @@ -152,7 +152,7 @@ class OverlayGeometryAppState extends State { } bool handleScrollNotification(ScrollNotification notification) { - if (notification is ScrollUpdateNotification && notification.depth == 1) { + if (notification is ScrollUpdateNotification && notification.depth == 0) { setState(() { final double dy = markersScrollOffset - notification.metrics.extentBefore; markersScrollOffset = notification.metrics.extentBefore; diff --git a/dev/manual_tests/test/overlay_geometry_test.dart b/dev/manual_tests/test/overlay_geometry_test.dart new file mode 100644 index 0000000000..923ea69adc --- /dev/null +++ b/dev/manual_tests/test/overlay_geometry_test.dart @@ -0,0 +1,23 @@ +// Copyright 2016 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 'package:flutter/material.dart'; +import 'package:flutter_test/flutter_test.dart'; + +import '../lib/overlay_geometry.dart' as overlay_geometry; + +void main() { + testWidgets('Overlay geometry smoke test', (WidgetTester tester) async { + await tester.pumpWidget(new MaterialApp(home: new overlay_geometry.OverlayGeometryApp())); + expect(find.byType(overlay_geometry.Marker), findsNothing); + await tester.tap(find.text('Card 3')); + await tester.pump(); + expect(find.byType(overlay_geometry.Marker), findsNWidgets(3)); + final double y = tester.getTopLeft(find.byType(overlay_geometry.Marker).first).dy; + await tester.fling(find.text('Card 3'), const Offset(0.0, -100.0), 100.0); + await tester.pump(); + expect(find.byType(overlay_geometry.Marker), findsNWidgets(3)); + expect(tester.getTopLeft(find.byType(overlay_geometry.Marker).first).dy, lessThan(y)); + }); +}