| // 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/material.dart'; |
| import 'package:flutter_driver/driver_extension.dart'; |
| |
| void main() { |
| enableFlutterDriverExtension(); |
| runApp(const DriverTestApp()); |
| } |
| |
| class DriverTestApp extends StatefulWidget { |
| const DriverTestApp({super.key}); |
| |
| @override |
| State<StatefulWidget> createState() { |
| return DriverTestAppState(); |
| } |
| } |
| |
| class DriverTestAppState extends State<DriverTestApp> { |
| bool present = true; |
| Letter _selectedValue = Letter.a; |
| |
| @override |
| Widget build(BuildContext context) { |
| return MaterialApp( |
| home: Scaffold( |
| appBar: AppBar( |
| title: const Text('FlutterDriver test'), |
| ), |
| body: ListView( |
| padding: const EdgeInsets.all(5.0), |
| children: <Widget>[ |
| Row( |
| children: <Widget>[ |
| Expanded( |
| child: Text(present ? 'present' : 'absent'), |
| ), |
| ElevatedButton( |
| child: const Text( |
| 'toggle', |
| key: ValueKey<String>('togglePresent'), |
| ), |
| onPressed: () { |
| setState(() { |
| present = !present; |
| }); |
| }, |
| ), |
| ], |
| ), |
| Row( |
| children: <Widget>[ |
| const Expanded( |
| child: Text('hit testability'), |
| ), |
| DropdownButton<Letter>( |
| key: const ValueKey<String>('dropdown'), |
| value: _selectedValue, |
| onChanged: (Letter? newValue) { |
| setState(() { |
| _selectedValue = newValue!; |
| }); |
| }, |
| items: const <DropdownMenuItem<Letter>>[ |
| DropdownMenuItem<Letter>( |
| value: Letter.a, |
| child: Text('Aaa', key: ValueKey<String>('a')), |
| ), |
| DropdownMenuItem<Letter>( |
| value: Letter.b, |
| child: Text('Bbb', key: ValueKey<String>('b')), |
| ), |
| DropdownMenuItem<Letter>( |
| value: Letter.c, |
| child: Text('Ccc', key: ValueKey<String>('c')), |
| ), |
| ], |
| ), |
| ], |
| ), |
| const TextField( |
| key: ValueKey<String>('enter-text-field'), |
| ), |
| ], |
| ), |
| ), |
| ); |
| } |
| } |
| |
| enum Letter { a, b, c } |