diff --git a/test/appium/tests/atomic/account_management/test_create_account.py b/test/appium/tests/atomic/account_management/test_create_account.py index 2d783a18e6..f4ed6960e8 100644 --- a/test/appium/tests/atomic/account_management/test_create_account.py +++ b/test/appium/tests/atomic/account_management/test_create_account.py @@ -57,18 +57,7 @@ class TestCreateAccount(SingleDeviceTestCase): @marks.high def test_home_view(self): sign_in = SignInView(self.driver) - sign_in.accept_agreements() - sign_in.create_account_button.click() - sign_in.password_input.set_value(common_password) - sign_in.next_button.click() - sign_in.confirm_password_input.set_value(common_password) - sign_in.next_button.click() - - sign_in.element_by_text_part('Display name').wait_for_element(30) - sign_in.name_input.send_keys('user_%s' % get_current_time()) - sign_in.next_button.click() - - welcome_screen = sign_in.get_home_view() + welcome_screen = sign_in.create_user() if not welcome_screen.welcome_image.is_element_displayed(): self.errors.append('Welcome image is not shown') diff --git a/test/appium/tests/atomic/account_management/test_recover.py b/test/appium/tests/atomic/account_management/test_recover.py index 042d78acdf..cc5df42deb 100644 --- a/test/appium/tests/atomic/account_management/test_recover.py +++ b/test/appium/tests/atomic/account_management/test_recover.py @@ -71,7 +71,7 @@ class TestRecoverAccessFromSignInScreen(SingleDeviceTestCase): @marks.high def test_pass_phrase_validation(self): signin_view = SignInView(self.driver) - recover_access_view = signin_view.i_have_account_button.click() + recover_access_view = signin_view.access_key_button.click() phrase_outside_the_mnemonic = 'one two three four five six seven eight nine ten eleven twelve' validations = [ { @@ -105,8 +105,8 @@ class TestRecoverAccessFromSignInScreen(SingleDeviceTestCase): for validation in validations: phrase, elm, msg = validation.get('phrase'), validation.get('element to check'), validation.get( 'validation message') - if signin_view.i_have_account_button.is_element_displayed(): - signin_view.i_have_account_button.click() + if signin_view.access_key_button.is_element_displayed(): + signin_view.access_key_button.click() recover_access_view.send_as_keyevent(phrase) recover_access_view.password_input.click() @@ -114,9 +114,9 @@ class TestRecoverAccessFromSignInScreen(SingleDeviceTestCase): self.errors.append('"{}" message is not shown'.format(msg)) recover_access_view.click_system_back_button() - signin_view.i_have_account_button.click() + signin_view.access_key_button.click() recover_access_view.send_as_keyevent(phrase_outside_the_mnemonic) - recover_access_view.password_input.click() + recover_access_view.recover_account_password_input.click() recover_access_view.send_as_keyevent('123456') recover_access_view.sign_in_button.click() recover_access_view.cancel_button.click() @@ -125,9 +125,9 @@ class TestRecoverAccessFromSignInScreen(SingleDeviceTestCase): self.errors.append('Something went wrong. Probably, the confirmation pop up did not disappear') recover_access_view.click_system_back_button() - signin_view.i_have_account_button.click() + signin_view.access_key_button.click() recover_access_view.send_as_keyevent(phrase_outside_the_mnemonic) - recover_access_view.password_input.click() + recover_access_view.recover_account_password_input.click() recover_access_view.send_as_keyevent('123456') recover_access_view.sign_in_button.click() home_view = recover_access_view.confirm_phrase_button.click() @@ -154,7 +154,7 @@ class TestRecoverAccessFromSignInScreen(SingleDeviceTestCase): passphrase = transaction_senders['A']['passphrase'] capitalized_passphrase = passphrase.upper() signin_view = SignInView(self.driver) - recover_access_view = signin_view.i_have_account_button.click() + recover_access_view = signin_view.access_key_button.click() recover_access_view.passphrase_input.click() recover_access_view.send_as_keyevent(capitalized_passphrase) if recover_access_view.passphrase_input.text != passphrase: diff --git a/test/appium/tests/atomic/account_management/test_sign_in.py b/test/appium/tests/atomic/account_management/test_sign_in.py index 65fa02d0e1..fe557533bd 100644 --- a/test/appium/tests/atomic/account_management/test_sign_in.py +++ b/test/appium/tests/atomic/account_management/test_sign_in.py @@ -37,7 +37,7 @@ class TestSignIn(SingleDeviceTestCase): sign_in.ok_button.click() sign_in.password_input.set_value(common_password + '1') sign_in.sign_in_button.click() - sign_in.find_full_text('Wrong password') + sign_in.find_full_text("Wrong password") @marks.logcat @marks.testrail_id(5415) diff --git a/test/appium/tests/atomic/chats/test_group_chat.py b/test/appium/tests/atomic/chats/test_group_chat.py index ed82a2e01a..098bdc8354 100644 --- a/test/appium/tests/atomic/chats/test_group_chat.py +++ b/test/appium/tests/atomic/chats/test_group_chat.py @@ -20,10 +20,8 @@ def return_made_admin_system_message(username): return "*%s* has been made admin" % username -def create_users(driver_1, driver_2, username_1=None, username_2=None): +def create_users(driver_1, driver_2): device_1_sign_in, device_2_sign_in = SignInView(driver_1), SignInView(driver_2) - if username_1 is not None and username_2 is not None: - return device_1_sign_in.create_user(username_1), device_2_sign_in.create_user(username_1) return device_1_sign_in.create_user(), device_2_sign_in.create_user() @@ -102,13 +100,12 @@ class TestGroupChatMultipleDevice(MultipleDeviceTestCase): @marks.testrail_id(5674) @marks.high def test_group_chat_system_messages(self): - username_1 = 'user1_%s' % get_current_time() - username_2 = 'user2_%s' % get_current_time() self.create_drivers(2) - device_1_home, device_2_home = create_users(self.drivers[0], self.drivers[1], username_1, username_2) + device_1_home, device_2_home = create_users(self.drivers[0], self.drivers[1]) chat_name = device_1_home.get_public_chat_name() + device_1_default_username = get_username(device_1_home) device_2_default_username = get_username(device_2_home) device_1_chat, device_2_chat = create_and_join_group_chat(device_1_home, device_2_home, chat_name) @@ -119,7 +116,7 @@ class TestGroupChatMultipleDevice(MultipleDeviceTestCase): # device 1: check system messages in the group chat system_messages = [ - return_created_chat_system_message(username_1, chat_name), + return_created_chat_system_message(device_1_default_username, chat_name), return_joined_chat_system_message(device_2_default_username), return_left_chat_system_message(device_2_default_username) ] @@ -164,7 +161,7 @@ class TestGroupChatMultipleDevice(MultipleDeviceTestCase): self.create_drivers(2) # create accounts on each device - device_1_home, device_2_home = create_users(self.drivers[0], self.drivers[1], username_1, username_2) + device_1_home, device_2_home = create_users(self.drivers[0], self.drivers[1]) chat_name = device_1_home.get_public_chat_name() # device 2: get public key and default username diff --git a/test/appium/tests/atomic/chats/test_one_to_one.py b/test/appium/tests/atomic/chats/test_one_to_one.py index 9cc26f28fd..9352d72e79 100644 --- a/test/appium/tests/atomic/chats/test_one_to_one.py +++ b/test/appium/tests/atomic/chats/test_one_to_one.py @@ -592,7 +592,7 @@ class TestMessagesOneToOneChatSingle(SingleDeviceTestCase): sigin_view = SignInView(self.driver) home_view = sigin_view.recover_access(sender_passphrase) wallet = home_view.wallet_button.click() - # wallet.set_up_wallet() + wallet.set_up_wallet() wallet.get_back_to_home_view() diff --git a/test/appium/tests/atomic/dapps_and_browsing/test_dapps.py b/test/appium/tests/atomic/dapps_and_browsing/test_dapps.py index 0b2ff4b9d6..4e5de434ab 100644 --- a/test/appium/tests/atomic/dapps_and_browsing/test_dapps.py +++ b/test/appium/tests/atomic/dapps_and_browsing/test_dapps.py @@ -50,12 +50,7 @@ class TestDApps(SingleDeviceTestCase): status_test_dapp.wait_for_d_aap_to_load() status_test_dapp.assets_button.click() send_transaction_view = status_test_dapp.request_stt_button.click() - wallet_view = send_transaction_view.get_wallet_view() - wallet_view.done_button.click() - wallet_view.yes_button.click() - send_transaction_view.advanced_button.click() - send_transaction_view.transaction_fee_button.click() - send_transaction_view.done_button.click() + send_transaction_view.ok_got_it_button.click() send_transaction_view.sign_transaction() if not status_test_dapp.assets_button.is_element_displayed(): self.driver.fail('Oops! Cannot proceed to use Status Test Dapp.') diff --git a/test/appium/tests/atomic/transactions/test_daaps_transactions.py b/test/appium/tests/atomic/transactions/test_daaps_transactions.py index 1965f4dec0..1663e72718 100644 --- a/test/appium/tests/atomic/transactions/test_daaps_transactions.py +++ b/test/appium/tests/atomic/transactions/test_daaps_transactions.py @@ -192,7 +192,6 @@ class TestTransactionDApp(SingleDeviceTestCase): @marks.testrail_id(5380) @marks.high - @marks.skip # No onboarding for now. TO re-enable once wallet onboarding done def test_user_can_complete_tx_to_dapp_when_onboarding_via_dapp_completed(self): user = transaction_recipients['G'] signin_view = SignInView(self.driver) diff --git a/test/appium/tests/test_performance.py b/test/appium/tests/test_performance.py index d6b248f91a..9023e36f31 100644 --- a/test/appium/tests/test_performance.py +++ b/test/appium/tests/test_performance.py @@ -21,6 +21,7 @@ class TestPerformance(SingleDeviceTestCase): @marks.testrail_id(6216) @marks.high @marks.performance + @marks.skip def test_time_to_load_sign_in_screen(self): app_started = ':init/app-started' diff --git a/test/appium/views/base_view.py b/test/appium/views/base_view.py index 62d07d99df..1a25571593 100644 --- a/test/appium/views/base_view.py +++ b/test/appium/views/base_view.py @@ -280,6 +280,16 @@ class OpenInStatusButton(BaseButton): self.wait_for_element().click() +class OkGotItButton(BaseButton): + def __init__(self,driver): + super(OkGotItButton, self).__init__(driver) + self.locator = self.Locator.xpath_selector("//*[@text='OK, got it']") + + def click(self): + self.wait_for_element().click() + self.wait_for_invisibility_of_element() + + class BaseView(object): def __init__(self, driver): self.driver = driver @@ -308,6 +318,7 @@ class BaseView(object): self.cross_icon = CrossIcon(self.driver) self.show_roots_button = ShowRoots(self.driver) self.get_started_button = GetStartedButton(self.driver) + self.ok_got_it_button = OkGotItButton(self.driver) # external browser self.open_in_status_button = OpenInStatusButton(self.driver) diff --git a/test/appium/views/send_transaction_view.py b/test/appium/views/send_transaction_view.py index f8e21e90fc..f1f0b0448d 100644 --- a/test/appium/views/send_transaction_view.py +++ b/test/appium/views/send_transaction_view.py @@ -224,8 +224,7 @@ class SendTransactionView(BaseView): if self.onboarding_message.is_element_displayed(): from views.wallet_view import WalletView wallet_view = WalletView(self.driver) - wallet_view.done_button.click() - self.yes_button.click() + wallet_view.ok_got_it_button.click() def sign_transaction(self, sender_password: str = common_password): self.sign_with_password.click() diff --git a/test/appium/views/wallet_view.py b/test/appium/views/wallet_view.py index ead82f1f93..47d1624efe 100644 --- a/test/appium/views/wallet_view.py +++ b/test/appium/views/wallet_view.py @@ -1,6 +1,7 @@ import time from views.base_view import BaseView from views.base_element import BaseButton, BaseText +from selenium.common.exceptions import NoSuchElementException class SendRequestButton(BaseButton): @@ -191,12 +192,6 @@ class AccountsStatusAccount(BaseButton): self.locator = self.Locator.xpath_selector("//android.widget.HorizontalScrollView//*[@text='Status account']") -class OkGotItButton(BaseButton): - def __init__(self,driver): - super(OkGotItButton, self).__init__(driver) - self.locator = self.Locator.xpath_selector("//*[@text='OK, got it']") - - class SendTransactionButton(BaseButton): def __init__(self, driver): @@ -254,7 +249,6 @@ class WalletView(BaseView): self.accounts_status_account = AccountsStatusAccount(self.driver) self.collectibles_button = CollectiblesButton(self.driver) self.set_currency_button = SetCurrencyButton(self.driver) - self.ok_got_it_button = OkGotItButton(self.driver) def get_usd_total_value(self): import re