diff --git a/test/e2e/configs/testpath.py b/test/e2e/configs/testpath.py index 109bce3137..28a583394a 100644 --- a/test/e2e/configs/testpath.py +++ b/test/e2e/configs/testpath.py @@ -25,3 +25,7 @@ SQUISH_DIR = SystemPath(os.getenv('SQUISH_DIR')) # Status Application STATUS_DATA: SystemPath = RUN / 'status' + +# Sets log level, can be one of: "ERROR", "WARN", "INFO", "DEBUG", "TRACE". "INFO" +LOG_LEVEL = 'DEBUG' + diff --git a/test/e2e/driver/aut.py b/test/e2e/driver/aut.py index ff1c52d295..5f3029096f 100644 --- a/test/e2e/driver/aut.py +++ b/test/e2e/driver/aut.py @@ -107,6 +107,7 @@ class AUT: f'--port={self.port}', f'"{self.path}"', f'-d={self.app_data}', + f'--LOG_LEVEL={configs.testpath.LOG_LEVEL}', options ] self.pid = local_system.execute(command) diff --git a/test/e2e/gui/components/wallet/wallet_account_popups.py b/test/e2e/gui/components/wallet/wallet_account_popups.py index eed36eb17c..1130bb92c4 100644 --- a/test/e2e/gui/components/wallet/wallet_account_popups.py +++ b/test/e2e/gui/components/wallet/wallet_account_popups.py @@ -75,7 +75,7 @@ class AccountPopup(BasePopup): def set_origin_watched_address(self, value: str): self._origin_combobox.click() self._watched_address_origin_item.click() - assert self._origin_combobox.__getattr__('title') == WalletOrigin.WATCHED_ADDRESS_ORIGIN.value + assert getattr(self._origin_combobox.object, 'title') == WalletOrigin.WATCHED_ADDRESS_ORIGIN.value self._address_text_edit.text = value return self diff --git a/test/e2e/gui/screens/settings_wallet.py b/test/e2e/gui/screens/settings_wallet.py index 4d771b9758..825e22a887 100644 --- a/test/e2e/gui/screens/settings_wallet.py +++ b/test/e2e/gui/screens/settings_wallet.py @@ -249,10 +249,16 @@ class EditNetworkSettings(WalletSettingsView): self._test_network_tab.click() @allure.step('Click Revert to default button and redirect to Networks screen') - def click_revert_to_default_and_go_to_networks_main_screen(self): + def click_revert_to_default_and_go_to_networks_main_screen(self, attempts: int=2): self._network_edit_scroll.vertical_down_to(self._network_revert_to_default) self._network_revert_to_default.click() - return NetworkWalletSettings().wait_until_appears() + try: + return NetworkWalletSettings().wait_until_appears() + except AssertionError: + if attempts: + return self.click_revert_to_default_and_go_to_networks_main_screen(attempts - 1) + else: + raise f"Networks screen was not opened" @allure.step('Check toast message') def check_toast_message(self, network_tab): diff --git a/test/e2e/gui/screens/wallet.py b/test/e2e/gui/screens/wallet.py index 0370fb218f..1066eabc6b 100644 --- a/test/e2e/gui/screens/wallet.py +++ b/test/e2e/gui/screens/wallet.py @@ -65,7 +65,7 @@ class LeftPanel(QObject): @close_exists(BasePopup()) def open_saved_addresses(self) -> 'SavedAddressesView': self._saved_addresses_button.click() - return SavedAdressesView().wait_until_appears() + return SavedAddressesView().wait_until_appears() @allure.step('Select account from list') @close_exists(BasePopup()) @@ -130,10 +130,10 @@ class LeftPanel(QObject): raise -class SavedAdressesView(QObject): +class SavedAddressesView(QObject): def __init__(self): - super(SavedAdressesView, self).__init__('mainWindow_SavedAddressesView') + super(SavedAddressesView, self).__init__('mainWindow_SavedAddressesView') self._add_new_address_button = Button('mainWallet_Saved_Addreses_Add_Buttton') self._address_list_item = QObject('savedAddressView_Delegate') self._send_button = Button('send_StatusRoundButton') diff --git a/test/e2e/tests/settings/settings_wallet/test_wallet_settings_account_order.py b/test/e2e/tests/settings/settings_wallet/test_wallet_settings_account_order.py index dcfeea701e..ea0f2cf138 100644 --- a/test/e2e/tests/settings/settings_wallet/test_wallet_settings_account_order.py +++ b/test/e2e/tests/settings/settings_wallet/test_wallet_settings_account_order.py @@ -2,10 +2,11 @@ import allure import pytest from allure_commons._allure import step +import configs import driver from gui.components.signing_phrase_popup import SigningPhrasePopup from gui.components.wallet.authenticate_popup import AuthenticatePopup -from gui.main_window import MainWindow +from gui.main_window import MainWindow, LeftPanel from scripts.tools import image @@ -18,6 +19,7 @@ from scripts.tools import image pytest.param('0xea123F7beFF45E3C9fdF54B324c29DBdA14a639A', 'Status account', 'WatchOnly', '#2a4af5', 'sunglasses', '😎 ', 'Generated', '#216266', 'thumbsup', '👍 ') ]) +@pytest.mark.skip(reason="https://github.com/status-im/status-desktop/issues/12777") def test_change_account_order_by_drag_and_drop(main_screen: MainWindow, user_account, address: str, default_name, name: str, color: str, emoji: str, acc_emoji: str, second_name: str, second_color: str, second_emoji: str, second_acc_emoji: str): @@ -53,14 +55,16 @@ def test_change_account_order_by_drag_and_drop(main_screen: MainWindow, user_acc with step('Verify the account order'): with step('Account order is correct in wallet settings'): - assert driver.waitFor(lambda: account_order.accounts[0].name == name) - assert driver.waitFor(lambda: account_order.accounts[1].name == second_name) - assert driver.waitFor(lambda: account_order.accounts[2].name == default_name) + assert driver.waitFor(lambda: account_order.accounts[0].name == name, configs.timeouts.UI_LOAD_TIMEOUT_MSEC) + assert driver.waitFor(lambda: account_order.accounts[1].name == second_name, configs.timeouts.UI_LOAD_TIMEOUT_MSEC) + assert driver.waitFor(lambda: account_order.accounts[2].name == default_name, configs.timeouts.UI_LOAD_TIMEOUT_MSEC) + with step('Account order is correct in wallet'): wallet = main_screen.left_panel.open_wallet() - assert driver.waitFor(lambda: wallet.left_panel.accounts[0].name == name) - assert driver.waitFor(lambda: wallet.left_panel.accounts[1].name == second_name) - assert driver.waitFor(lambda: wallet.left_panel.accounts[2].name == default_name) + wallet.left_panel.select_account(default_name) + assert driver.waitFor(lambda: wallet.left_panel.accounts[0].name == name, configs.timeouts.UI_LOAD_TIMEOUT_MSEC) + assert driver.waitFor(lambda: wallet.left_panel.accounts[1].name == second_name, configs.timeouts.UI_LOAD_TIMEOUT_MSEC) + assert driver.waitFor(lambda: wallet.left_panel.accounts[2].name == default_name, configs.timeouts.UI_LOAD_TIMEOUT_MSEC) with step('Drag second account to the top of the list'): account_order = main_screen.left_panel.open_settings().left_panel.open_wallet_settings().open_account_order() @@ -68,14 +72,16 @@ def test_change_account_order_by_drag_and_drop(main_screen: MainWindow, user_acc with step('Verify the account order'): with step('Account order is correct in wallet settings'): - assert driver.waitFor(lambda: account_order.accounts[0].name == second_name) - assert driver.waitFor(lambda: account_order.accounts[1].name == name) - assert driver.waitFor(lambda: account_order.accounts[2].name == default_name) + assert driver.waitFor(lambda: account_order.accounts[0].name == second_name, configs.timeouts.UI_LOAD_TIMEOUT_MSEC) + assert driver.waitFor(lambda: account_order.accounts[1].name == name, configs.timeouts.UI_LOAD_TIMEOUT_MSEC) + assert driver.waitFor(lambda: account_order.accounts[2].name == default_name, configs.timeouts.UI_LOAD_TIMEOUT_MSEC) + with step('Account order is correct in wallet'): wallet = main_screen.left_panel.open_wallet() - assert driver.waitFor(lambda: wallet.left_panel.accounts[0].name == second_name) - assert driver.waitFor(lambda: wallet.left_panel.accounts[1].name == name) - assert driver.waitFor(lambda: wallet.left_panel.accounts[2].name == default_name) + wallet.left_panel.select_account(default_name) + assert driver.waitFor(lambda: wallet.left_panel.accounts[0].name == second_name, configs.timeouts.UI_LOAD_TIMEOUT_MSEC) + assert driver.waitFor(lambda: wallet.left_panel.accounts[1].name == name, configs.timeouts.UI_LOAD_TIMEOUT_MSEC) + assert driver.waitFor(lambda: wallet.left_panel.accounts[2].name == default_name, configs.timeouts.UI_LOAD_TIMEOUT_MSEC) @allure.testcase('https://ethstatus.testrail.net/index.php?/cases/edit/703416', diff --git a/test/e2e/tests/settings/settings_wallet/test_wallet_settings_networks_testnet_mode.py b/test/e2e/tests/settings/settings_wallet/test_wallet_settings_networks_testnet_mode.py index 26727ed93a..6b48d06e00 100644 --- a/test/e2e/tests/settings/settings_wallet/test_wallet_settings_networks_testnet_mode.py +++ b/test/e2e/tests/settings/settings_wallet/test_wallet_settings_networks_testnet_mode.py @@ -2,6 +2,7 @@ import allure import pytest from allure import step +import configs.system from constants.wallet import WalletNetworkSettings, WalletNetworkNaming from gui.components.wallet.testnet_mode_banner import TestnetModeBanner from gui.components.wallet.wallet_toast_message import WalletToastMessage @@ -33,7 +34,8 @@ def test_switch_testnet_mode(main_screen: MainWindow): message = WalletToastMessage().get_toast_messages[0] assert message == WalletNetworkSettings.TESTNET_ENABLED_TOAST_MESSAGE.value, \ f"Toast message is incorrect, current message is {message}" - TestnetModeBanner().wait_until_appears() + if not configs.system.TEST_MODE: + TestnetModeBanner().wait_until_appears() assert networks.is_testnet_mode_toggle_checked(), f"Testnet toggle if off when it should not" with step('Verify networks are switched to testnets'): @@ -53,7 +55,8 @@ def test_switch_testnet_mode(main_screen: MainWindow): message = WalletToastMessage().get_toast_messages[1] assert message == WalletNetworkSettings.TESTNET_DISABLED_TOAST_MESSAGE.value, \ f"Toast message is incorrect, current message is {message}" - TestnetModeBanner().wait_until_hidden() + if not configs.system.TEST_MODE: + TestnetModeBanner().wait_until_appears() assert not networks.is_testnet_mode_toggle_checked(), f"Testnet toggle is on when it should not" @@ -79,7 +82,8 @@ def test_toggle_testnet_toggle_on_and_close_the_confirmation(main_screen: MainWi with step('Verify that Testnet mode is not turned off'): assert not WalletToastMessage().is_visible - assert not TestnetModeBanner().is_visible, f"Testnet banner is present when it should not" + if not configs.system.TEST_MODE: + assert not TestnetModeBanner().is_visible, f"Testnet banner is present when it should not" assert not networks.is_testnet_mode_toggle_checked(), \ f"Testnet toggle is turned on when it should not" @@ -105,7 +109,9 @@ def test_switch_testnet_off_by_toggle_and_cancel_in_confirmation(main_screen: Ma message = WalletToastMessage().get_toast_messages[0] assert message == WalletNetworkSettings.TESTNET_ENABLED_TOAST_MESSAGE.value, \ f"Toast message is incorrect, current message is {message}" - TestnetModeBanner().wait_until_appears() + if not configs.system.TEST_MODE: + assert TestnetModeBanner().wait_until_appears(), f"Testnet banner is not present when it should" + assert networks.is_testnet_mode_toggle_checked(), f"testnet toggle is off" with step('Toggle the Testnet mode toggle Off'): @@ -116,4 +122,5 @@ def test_switch_testnet_off_by_toggle_and_cancel_in_confirmation(main_screen: Ma assert networks.is_testnet_mode_toggle_checked(), f"Testnet toggle is turned OFF when it should not" with step('Verify that Testnet mode is not turned off'): - assert TestnetModeBanner().is_visible, f"Testnet banner is not present when it should" + if not configs.system.TEST_MODE: + assert TestnetModeBanner().wait_until_appears(), f"Testnet banner is not present when it should" diff --git a/test/e2e/tests/test_self.py b/test/e2e/tests/test_self.py deleted file mode 100755 index 473fa84f37..0000000000 --- a/test/e2e/tests/test_self.py +++ /dev/null @@ -1,14 +0,0 @@ -import logging - -import allure -import pytest -from allure_commons._allure import step - -_logger = logging.getLogger(__name__) -pytestmark = allure.suite("Self") - - -@pytest.mark.self -def test_start_aut(main_window): - with step("Verify: 'main_window' fixture launched test app and prepared main window"): - assert main_window.exists