From ba93987c6e16e56d57cc43ce3d64d9e87fba9986 Mon Sep 17 00:00:00 2001 From: Hans Muller Date: Tue, 23 Feb 2016 17:28:03 -0800 Subject: [PATCH] Added bottom_sheet_rebuild_test --- .../widget/bottom_sheet_rebuild_test.dart | 45 +++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 packages/flutter/test/widget/bottom_sheet_rebuild_test.dart diff --git a/packages/flutter/test/widget/bottom_sheet_rebuild_test.dart b/packages/flutter/test/widget/bottom_sheet_rebuild_test.dart new file mode 100644 index 00000000000..b5f2a5a4082 --- /dev/null +++ b/packages/flutter/test/widget/bottom_sheet_rebuild_test.dart @@ -0,0 +1,45 @@ +// Copyright 2015 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_test/flutter_test.dart'; +import 'package:flutter/material.dart'; +import 'package:test/test.dart'; + +void main() { + test('Verify that a BottomSheet can be rebuilt with ScaffoldFeatureController.setState()', () { + testWidgets((WidgetTester tester) { + final GlobalKey scaffoldKey = new GlobalKey(); + ScaffoldFeatureController bottomSheet; + int buildCount = 0; + + tester.pumpWidget(new MaterialApp( + routes: { + '/': (RouteArguments args) { + return new Scaffold( + key: scaffoldKey, + body: new Center(child: new Text('body')) + ); + } + } + )); + + bottomSheet = scaffoldKey.currentState.showBottomSheet((_) { + return new Builder( + builder: (_) { + buildCount += 1; + return new Container(height: 200.0); + } + ); + }); + + tester.pump(); + expect(buildCount, equals(1)); + + bottomSheet.setState((){ }); + tester.pump(); + expect(buildCount, equals(2)); + }); + }); + +}