| 1 | import 'package:cake_wallet/src/screens/dashboard/widgets/menu_widget.dart'; |
| 2 | import 'package:flutter_test/flutter_test.dart'; |
| 3 | |
| 4 | import '../components/common_test_cases.dart'; |
| 5 | |
| 6 | class DashboardMenuWidgetRobot { |
| 7 | DashboardMenuWidgetRobot(this.tester) : commonTestCases = CommonTestCases(tester); |
| 8 | |
| 9 | final WidgetTester tester; |
| 10 | late CommonTestCases commonTestCases; |
| 11 | |
| 12 | Future<void> hasMenuWidget() async { |
| 13 | await commonTestCases.takeScreenshots('menu_widget_page'); |
| 14 | commonTestCases.hasType<MenuWidget>(); |
| 15 | } |
| 16 | |
| 17 | void displaysTheCorrectWalletNameAndSubName() { |
| 18 | final menuWidgetState = tester.state<MenuWidgetState>(find.byType(MenuWidget)); |
| 19 | |
| 20 | final walletName = menuWidgetState.widget.dashboardViewModel.name; |
| 21 | commonTestCases.hasText(walletName); |
| 22 | |
| 23 | final walletSubName = menuWidgetState.widget.dashboardViewModel.subname; |
| 24 | if (walletSubName.isNotEmpty) { |
| 25 | commonTestCases.hasText(walletSubName); |
| 26 | } |
| 27 | } |
| 28 | |
| 29 | Future<void> navigateToWalletMenu() async { |
| 30 | await commonTestCases.tapItemByKey('dashboard_page_menu_widget_wallet_menu_button_key'); |
| 31 | await commonTestCases.defaultSleepTime(); |
| 32 | } |
| 33 | |
| 34 | Future<void> navigateToSecurityAndBackupPage() async { |
| 35 | await commonTestCases.tapItemByKey( |
| 36 | 'dashboard_page_menu_widget_security_and_backup_button_key', |
| 37 | ); |
| 38 | await commonTestCases.defaultSleepTime(); |
| 39 | } |
| 40 | } |