dev
dart 45 lines 1.47 KB
Raw
1 import 'package:cake_wallet/generated/i18n.dart';
2 import 'package:cake_wallet/src/screens/seed/seed_verification/seed_verification_page.dart';
3 import 'package:flutter_test/flutter_test.dart';
4
5 import '../components/common_test_cases.dart';
6
7 class SeedVerificationPageRobot {
8 SeedVerificationPageRobot(this.tester) : commonTestCases = CommonTestCases(tester);
9
10 final WidgetTester tester;
11 final CommonTestCases commonTestCases;
12
13 Future<void> isSeedVerificationPage() async {
14 await commonTestCases.isSpecificPage<SeedVerificationPage>();
15 await commonTestCases.takeScreenshots('seed_verification_page');
16 }
17
18 void hasTitle() {
19 commonTestCases.hasText(S.current.verify_seed);
20 }
21
22 Future<void> verifyWalletSeeds() async {
23 final seedVerificationPage =
24 tester.widget<SeedVerificationPage>(find.byType(SeedVerificationPage));
25
26 final walletSeedViewModel = seedVerificationPage.walletSeedViewModel;
27
28 while (!walletSeedViewModel.isVerificationComplete &&
29 walletSeedViewModel.verificationWordCount != 0) {
30 final currentCorrectWord = walletSeedViewModel.currentCorrectWord;
31
32 commonTestCases.hasTextAtLestOnce(currentCorrectWord);
33
34 await commonTestCases.tapItemByKey(
35 'seed_verification_option_${currentCorrectWord}_button_key',
36 );
37
38 await commonTestCases.defaultSleepTime(seconds: 1);
39 }
40
41 await commonTestCases.tapItemByKey('wallet_seed_page_open_wallet_button_key');
42
43 await commonTestCases.defaultSleepTime();
44 }
45 }