mirror of
https://github.com/status-im/status-desktop.git
synced 2025-02-19 18:18:38 +00:00
chore: several changes for wallet settings tests (#317)
* chore: fix several wallet tests * disable account ordering because of bug * remove test self as not needed anymore * add log level * click the revert button 2 times
This commit is contained in:
parent
5eeac9226a
commit
d7908775f0
@ -25,3 +25,7 @@ SQUISH_DIR = SystemPath(os.getenv('SQUISH_DIR'))
|
|||||||
|
|
||||||
# Status Application
|
# Status Application
|
||||||
STATUS_DATA: SystemPath = RUN / 'status'
|
STATUS_DATA: SystemPath = RUN / 'status'
|
||||||
|
|
||||||
|
# Sets log level, can be one of: "ERROR", "WARN", "INFO", "DEBUG", "TRACE". "INFO"
|
||||||
|
LOG_LEVEL = 'DEBUG'
|
||||||
|
|
||||||
|
@ -107,6 +107,7 @@ class AUT:
|
|||||||
f'--port={self.port}',
|
f'--port={self.port}',
|
||||||
f'"{self.path}"',
|
f'"{self.path}"',
|
||||||
f'-d={self.app_data}',
|
f'-d={self.app_data}',
|
||||||
|
f'--LOG_LEVEL={configs.testpath.LOG_LEVEL}',
|
||||||
options
|
options
|
||||||
]
|
]
|
||||||
self.pid = local_system.execute(command)
|
self.pid = local_system.execute(command)
|
||||||
|
@ -75,7 +75,7 @@ class AccountPopup(BasePopup):
|
|||||||
def set_origin_watched_address(self, value: str):
|
def set_origin_watched_address(self, value: str):
|
||||||
self._origin_combobox.click()
|
self._origin_combobox.click()
|
||||||
self._watched_address_origin_item.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
|
self._address_text_edit.text = value
|
||||||
return self
|
return self
|
||||||
|
|
||||||
|
@ -249,10 +249,16 @@ class EditNetworkSettings(WalletSettingsView):
|
|||||||
self._test_network_tab.click()
|
self._test_network_tab.click()
|
||||||
|
|
||||||
@allure.step('Click Revert to default button and redirect to Networks screen')
|
@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_edit_scroll.vertical_down_to(self._network_revert_to_default)
|
||||||
self._network_revert_to_default.click()
|
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')
|
@allure.step('Check toast message')
|
||||||
def check_toast_message(self, network_tab):
|
def check_toast_message(self, network_tab):
|
||||||
|
@ -65,7 +65,7 @@ class LeftPanel(QObject):
|
|||||||
@close_exists(BasePopup())
|
@close_exists(BasePopup())
|
||||||
def open_saved_addresses(self) -> 'SavedAddressesView':
|
def open_saved_addresses(self) -> 'SavedAddressesView':
|
||||||
self._saved_addresses_button.click()
|
self._saved_addresses_button.click()
|
||||||
return SavedAdressesView().wait_until_appears()
|
return SavedAddressesView().wait_until_appears()
|
||||||
|
|
||||||
@allure.step('Select account from list')
|
@allure.step('Select account from list')
|
||||||
@close_exists(BasePopup())
|
@close_exists(BasePopup())
|
||||||
@ -130,10 +130,10 @@ class LeftPanel(QObject):
|
|||||||
raise
|
raise
|
||||||
|
|
||||||
|
|
||||||
class SavedAdressesView(QObject):
|
class SavedAddressesView(QObject):
|
||||||
|
|
||||||
def __init__(self):
|
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._add_new_address_button = Button('mainWallet_Saved_Addreses_Add_Buttton')
|
||||||
self._address_list_item = QObject('savedAddressView_Delegate')
|
self._address_list_item = QObject('savedAddressView_Delegate')
|
||||||
self._send_button = Button('send_StatusRoundButton')
|
self._send_button = Button('send_StatusRoundButton')
|
||||||
|
@ -2,10 +2,11 @@ import allure
|
|||||||
import pytest
|
import pytest
|
||||||
from allure_commons._allure import step
|
from allure_commons._allure import step
|
||||||
|
|
||||||
|
import configs
|
||||||
import driver
|
import driver
|
||||||
from gui.components.signing_phrase_popup import SigningPhrasePopup
|
from gui.components.signing_phrase_popup import SigningPhrasePopup
|
||||||
from gui.components.wallet.authenticate_popup import AuthenticatePopup
|
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
|
from scripts.tools import image
|
||||||
|
|
||||||
|
|
||||||
@ -18,6 +19,7 @@ from scripts.tools import image
|
|||||||
pytest.param('0xea123F7beFF45E3C9fdF54B324c29DBdA14a639A', 'Status account',
|
pytest.param('0xea123F7beFF45E3C9fdF54B324c29DBdA14a639A', 'Status account',
|
||||||
'WatchOnly', '#2a4af5', 'sunglasses', '😎 ', 'Generated', '#216266', 'thumbsup', '👍 ')
|
'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,
|
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,
|
name: str, color: str, emoji: str, acc_emoji: str, second_name: str,
|
||||||
second_color: str, second_emoji: str, second_acc_emoji: 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('Verify the account order'):
|
||||||
with step('Account order is correct in wallet settings'):
|
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[0].name == name, configs.timeouts.UI_LOAD_TIMEOUT_MSEC)
|
||||||
assert driver.waitFor(lambda: account_order.accounts[1].name == second_name)
|
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)
|
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'):
|
with step('Account order is correct in wallet'):
|
||||||
wallet = main_screen.left_panel.open_wallet()
|
wallet = main_screen.left_panel.open_wallet()
|
||||||
assert driver.waitFor(lambda: wallet.left_panel.accounts[0].name == name)
|
wallet.left_panel.select_account(default_name)
|
||||||
assert driver.waitFor(lambda: wallet.left_panel.accounts[1].name == second_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[2].name == default_name)
|
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'):
|
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()
|
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('Verify the account order'):
|
||||||
with step('Account order is correct in wallet settings'):
|
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[0].name == second_name, configs.timeouts.UI_LOAD_TIMEOUT_MSEC)
|
||||||
assert driver.waitFor(lambda: account_order.accounts[1].name == name)
|
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)
|
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'):
|
with step('Account order is correct in wallet'):
|
||||||
wallet = main_screen.left_panel.open_wallet()
|
wallet = main_screen.left_panel.open_wallet()
|
||||||
assert driver.waitFor(lambda: wallet.left_panel.accounts[0].name == second_name)
|
wallet.left_panel.select_account(default_name)
|
||||||
assert driver.waitFor(lambda: wallet.left_panel.accounts[1].name == 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[2].name == default_name)
|
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',
|
@allure.testcase('https://ethstatus.testrail.net/index.php?/cases/edit/703416',
|
||||||
|
@ -2,6 +2,7 @@ import allure
|
|||||||
import pytest
|
import pytest
|
||||||
from allure import step
|
from allure import step
|
||||||
|
|
||||||
|
import configs.system
|
||||||
from constants.wallet import WalletNetworkSettings, WalletNetworkNaming
|
from constants.wallet import WalletNetworkSettings, WalletNetworkNaming
|
||||||
from gui.components.wallet.testnet_mode_banner import TestnetModeBanner
|
from gui.components.wallet.testnet_mode_banner import TestnetModeBanner
|
||||||
from gui.components.wallet.wallet_toast_message import WalletToastMessage
|
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]
|
message = WalletToastMessage().get_toast_messages[0]
|
||||||
assert message == WalletNetworkSettings.TESTNET_ENABLED_TOAST_MESSAGE.value, \
|
assert message == WalletNetworkSettings.TESTNET_ENABLED_TOAST_MESSAGE.value, \
|
||||||
f"Toast message is incorrect, current message is {message}"
|
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"
|
assert networks.is_testnet_mode_toggle_checked(), f"Testnet toggle if off when it should not"
|
||||||
|
|
||||||
with step('Verify networks are switched to testnets'):
|
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]
|
message = WalletToastMessage().get_toast_messages[1]
|
||||||
assert message == WalletNetworkSettings.TESTNET_DISABLED_TOAST_MESSAGE.value, \
|
assert message == WalletNetworkSettings.TESTNET_DISABLED_TOAST_MESSAGE.value, \
|
||||||
f"Toast message is incorrect, current message is {message}"
|
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"
|
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'):
|
with step('Verify that Testnet mode is not turned off'):
|
||||||
assert not WalletToastMessage().is_visible
|
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(), \
|
assert not networks.is_testnet_mode_toggle_checked(), \
|
||||||
f"Testnet toggle is turned on when it should not"
|
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]
|
message = WalletToastMessage().get_toast_messages[0]
|
||||||
assert message == WalletNetworkSettings.TESTNET_ENABLED_TOAST_MESSAGE.value, \
|
assert message == WalletNetworkSettings.TESTNET_ENABLED_TOAST_MESSAGE.value, \
|
||||||
f"Toast message is incorrect, current message is {message}"
|
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"
|
assert networks.is_testnet_mode_toggle_checked(), f"testnet toggle is off"
|
||||||
|
|
||||||
with step('Toggle the Testnet mode toggle 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"
|
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'):
|
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"
|
||||||
|
@ -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
|
|
Loading…
x
Reference in New Issue
Block a user