| import 'package:flutter/widgets.dart'; |
| import 'package:test/test.dart'; |
| |
| import 'widget_tester.dart'; |
| |
| final BoxDecoration kBoxDecorationA = new BoxDecoration( |
| backgroundColor: const Color(0xFFFF0000) |
| ); |
| |
| final BoxDecoration kBoxDecorationB = new BoxDecoration( |
| backgroundColor: const Color(0xFF00FF00) |
| ); |
| |
| final BoxDecoration kBoxDecorationC = new BoxDecoration( |
| backgroundColor: const Color(0xFF0000FF) |
| ); |
| |
| class FlipComponent extends StatefulComponent { |
| FlipComponent({ Key key, this.left, this.right }) : super(key: key); |
| |
| final Widget left; |
| final Widget right; |
| |
| FlipComponentState createState() => new FlipComponentState(); |
| } |
| |
| class FlipComponentState extends State<FlipComponent> { |
| bool _showLeft = true; |
| |
| void flip() { |
| setState(() { |
| _showLeft = !_showLeft; |
| }); |
| } |
| |
| Widget build(BuildContext context) { |
| return _showLeft ? config.left : config.right; |
| } |
| } |
| |
| class TestBuildCounter extends StatelessComponent { |
| static int buildCount = 0; |
| |
| Widget build(BuildContext context) { |
| ++buildCount; |
| return new DecoratedBox(decoration: kBoxDecorationA); |
| } |
| } |
| |
| void flipStatefulComponent(WidgetTester tester) { |
| StatefulComponentElement stateElement = |
| tester.findElement((Element element) => element is StatefulComponentElement); |
| expect(stateElement, isNotNull); |
| expect(stateElement.state is FlipComponentState, isTrue); |
| FlipComponentState state = stateElement.state; |
| state.flip(); |
| } |