mirror of
https://github.com/status-im/status-desktop.git
synced 2025-02-18 01:27:25 +00:00
chore(@edit_network): add verifications for checkbox and error messages (#138)
This commit is contained in:
parent
b25af97160
commit
b9129b96af
@ -13,6 +13,7 @@ class WalletNetworkSettings(Enum):
|
|||||||
TESTNET_SUBTITLE = 'Switch entire Status app to testnet only mode'
|
TESTNET_SUBTITLE = 'Switch entire Status app to testnet only mode'
|
||||||
TESTNET_ENABLED_TOAST_MESSAGE = 'Testnet mode turned on'
|
TESTNET_ENABLED_TOAST_MESSAGE = 'Testnet mode turned on'
|
||||||
TESTNET_DISABLED_TOAST_MESSAGE = 'Testnet mode turned off'
|
TESTNET_DISABLED_TOAST_MESSAGE = 'Testnet mode turned off'
|
||||||
|
ACKNOWLEDGMENT_CHECKBOX_TEXT = 'I understand that changing network settings can cause unforeseen issues, errors, security risks and potentially even loss of funds.'
|
||||||
|
|
||||||
|
|
||||||
class WalletNetworkNaming(Enum):
|
class WalletNetworkNaming(Enum):
|
||||||
@ -28,5 +29,10 @@ class WalletNetworkNaming(Enum):
|
|||||||
|
|
||||||
|
|
||||||
class WalletNetworkDefaultValues(Enum):
|
class WalletNetworkDefaultValues(Enum):
|
||||||
ETHEREUM_LIVE_MAIN = 'https://eth-archival.gateway.pokt.network/v1/lb/********'
|
ETHEREUM_LIVE_MAIN = 'https://eth-archival.gateway.pokt.network/v1/lb/************************'
|
||||||
ETHEREUM_LIVE_FAILOVER = 'https://mainnet.infura.io/v3/********************************'
|
ETHEREUM_LIVE_FAILOVER = 'https://mainnet.infura.io/v3/********************************'
|
||||||
|
|
||||||
|
|
||||||
|
class WalletEditNetworkErrorMessages(Enum):
|
||||||
|
PINGUNSUCCESSFUL = 'RPC appears to be either offline or this is not a valid JSON RPC endpoint URL'
|
||||||
|
PINGVERIFIED = 'RPC successfully reached'
|
||||||
|
@ -78,8 +78,10 @@ editNetworkMainRpcInput = {"container": statusDesktop_mainWindow, "objectName":
|
|||||||
editNetworkFailoverRpcUrlInput = {"container": statusDesktop_mainWindow, "objectName": "editNetworkFailoverRpcUrlInput", "type": "TextEdit", "visible": True}
|
editNetworkFailoverRpcUrlInput = {"container": statusDesktop_mainWindow, "objectName": "editNetworkFailoverRpcUrlInput", "type": "TextEdit", "visible": True}
|
||||||
editNetworkExplorerInput = {"container": statusDesktop_mainWindow, "objectName": "editNetworkExplorerInput", "type": "TextEdit"}
|
editNetworkExplorerInput = {"container": statusDesktop_mainWindow, "objectName": "editNetworkExplorerInput", "type": "TextEdit"}
|
||||||
editNetworkAknowledgmentCheckbox = {"container": statusDesktop_mainWindow, "objectName": "editNetworkAknowledgmentCheckbox", "type": "StatusCheckBox", "visible": True}
|
editNetworkAknowledgmentCheckbox = {"container": statusDesktop_mainWindow, "objectName": "editNetworkAknowledgmentCheckbox", "type": "StatusCheckBox", "visible": True}
|
||||||
editNetworkRevertButton = {"container": statusDesktop_mainWindow, "objectName": "editNetworkRevertButton", "type": "StatusButton", "visible": True}
|
editNetworkRevertButton = {"container": statusDesktop_mainWindow, "objectName": "editNetworkRevertButton", "type": "StatusButton", "visible": True, "enabled": True}
|
||||||
editNetworkSaveButton = {"container": statusDesktop_mainWindow, "objectName": "editNetworkSaveButton", "type": "StatusButton"}
|
editNetworkSaveButton = {"container": statusDesktop_mainWindow, "objectName": "editNetworkSaveButton", "type": "StatusButton"}
|
||||||
|
mainRpcUrlInputObject = {"container": settingsContentBase_ScrollView, "objectName": "mainRpcInputObject", "type": "StatusInput", "visible": True}
|
||||||
|
failoverRpcUrlInputObject = {"container": settingsContentBase_ScrollView, "objectName": "failoverRpcUrlInputObject", "type": "StatusInput", "visible": True}
|
||||||
|
|
||||||
# Profile View
|
# Profile View
|
||||||
mainWindow_MyProfileView = {"container": statusDesktop_mainWindow, "type": "MyProfileView", "unnamed": 1, "visible": True}
|
mainWindow_MyProfileView = {"container": statusDesktop_mainWindow, "type": "MyProfileView", "unnamed": 1, "visible": True}
|
||||||
|
@ -446,6 +446,8 @@ class EditNetworkSettings(WalletSettingsView):
|
|||||||
self._network_save_changes = Button('editNetworkSaveButton')
|
self._network_save_changes = Button('editNetworkSaveButton')
|
||||||
self._network_edit_view_back_button = Button('main_toolBar_back_button')
|
self._network_edit_view_back_button = Button('main_toolBar_back_button')
|
||||||
self._network_edit_scroll = Scroll('settingsContentBaseScrollView_Flickable')
|
self._network_edit_scroll = Scroll('settingsContentBaseScrollView_Flickable')
|
||||||
|
self._network_edit_main_rpc_url_error_message = QObject('mainRpcUrlInputObject')
|
||||||
|
self._network_edit_failover_rpc_url_error_message = QObject('failoverRpcUrlInputObject')
|
||||||
|
|
||||||
@allure.step('Verify elements for the edit network view')
|
@allure.step('Verify elements for the edit network view')
|
||||||
def check_available_elements_on_edit_view(self):
|
def check_available_elements_on_edit_view(self):
|
||||||
@ -462,19 +464,19 @@ class EditNetworkSettings(WalletSettingsView):
|
|||||||
|
|
||||||
self._network_edit_scroll.vertical_down_to(self._network_acknowledgment_checkbox)
|
self._network_edit_scroll.vertical_down_to(self._network_acknowledgment_checkbox)
|
||||||
assert driver.waitFor(lambda: self._network_acknowledgment_checkbox.exists,
|
assert driver.waitFor(lambda: self._network_acknowledgment_checkbox.exists,
|
||||||
configs.timeouts.UI_LOAD_TIMEOUT_MSEC)
|
configs.timeouts.UI_LOAD_TIMEOUT_MSEC), f"Acknowldegment checkbox is not present"
|
||||||
|
|
||||||
self._network_edit_scroll.vertical_down_to(self._network_revert_to_default)
|
self._network_edit_scroll.vertical_down_to(self._network_revert_to_default)
|
||||||
assert driver.waitFor(lambda: self._network_revert_to_default.exists,
|
assert driver.waitFor(lambda: self._network_revert_to_default.exists,
|
||||||
configs.timeouts.UI_LOAD_TIMEOUT_MSEC)
|
configs.timeouts.UI_LOAD_TIMEOUT_MSEC), f"Revert to default button is not present"
|
||||||
|
|
||||||
assert self._network_save_changes.exists
|
assert self._network_save_changes.exists, f"Save changes button is not present"
|
||||||
|
|
||||||
@allure.step('Edit the rpc input field')
|
@allure.step('Edit Main RPC url input field')
|
||||||
def edit_network_main_json_rpc_url_input(self, test_value):
|
def edit_network_main_json_rpc_url_input(self, test_value):
|
||||||
self._network_main_json_rpc_url.text = test_value
|
self._network_main_json_rpc_url.text = test_value
|
||||||
|
|
||||||
@allure.step('Edit the rpc input field')
|
@allure.step('Edit Failover RPC url input field')
|
||||||
def edit_network_failover_json_rpc_url_input(self, test_value):
|
def edit_network_failover_json_rpc_url_input(self, test_value):
|
||||||
self._network_failover_json_rpc_url.text = test_value
|
self._network_failover_json_rpc_url.text = test_value
|
||||||
|
|
||||||
@ -483,10 +485,32 @@ class EditNetworkSettings(WalletSettingsView):
|
|||||||
self._network_acknowledgment_checkbox.set(value)
|
self._network_acknowledgment_checkbox.set(value)
|
||||||
return self
|
return self
|
||||||
|
|
||||||
|
@allure.step('Get the text for consent when changing RPC urls')
|
||||||
|
def get_acknowledgement_checkbox_text(self, attr):
|
||||||
|
text = str(self._network_acknowledgment_checkbox.get_object_attribute(attr))
|
||||||
|
return text
|
||||||
|
|
||||||
|
@allure.step('Get error message for Main RPC URL input')
|
||||||
|
def get_main_rpc_url_error_message_text(self):
|
||||||
|
error = str(self._network_edit_main_rpc_url_error_message.object.errorMessageCmp.text)
|
||||||
|
return error
|
||||||
|
|
||||||
|
@allure.step('Get error message for Failover RPC URL input')
|
||||||
|
def get_failover_rpc_url_error_message_text(self):
|
||||||
|
error = str(self._network_edit_failover_rpc_url_error_message.object.errorMessageCmp.text)
|
||||||
|
return error
|
||||||
|
|
||||||
@allure.step('Click Revert to default button')
|
@allure.step('Click Revert to default button')
|
||||||
def click_network_revert_to_default(self):
|
def revert_to_default(self, attempts=2):
|
||||||
|
current_value_main = self._network_main_json_rpc_url.text
|
||||||
|
current_value_failover = self._network_failover_json_rpc_url.text
|
||||||
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()
|
||||||
|
if (current_value_main == self._network_main_json_rpc_url.text
|
||||||
|
and current_value_failover == self._network_failover_json_rpc_url.text):
|
||||||
|
assert attempts > 0, "value not reverted"
|
||||||
|
time.sleep(1)
|
||||||
|
self.revert_to_default(attempts-1)
|
||||||
|
|
||||||
@allure.step('Get value from Main json rpc input')
|
@allure.step('Get value from Main json rpc input')
|
||||||
def get_edit_network_main_json_rpc_url_value(self):
|
def get_edit_network_main_json_rpc_url_value(self):
|
||||||
|
@ -7,7 +7,8 @@ from allure import step
|
|||||||
import configs
|
import configs
|
||||||
import constants
|
import constants
|
||||||
import driver
|
import driver
|
||||||
from constants.wallet import WalletNetworkSettings, WalletNetworkNaming, WalletNetworkDefaultValues
|
from constants.wallet import WalletNetworkSettings, WalletNetworkNaming, WalletNetworkDefaultValues, \
|
||||||
|
WalletEditNetworkErrorMessages
|
||||||
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.components.wallet.testnet_mode_banner import TestnetModeBanner
|
from gui.components.wallet.testnet_mode_banner import TestnetModeBanner
|
||||||
@ -143,24 +144,41 @@ def test_settings_networks_edit_restore_defaults(main_screen: MainWindow):
|
|||||||
with step('Click in Main JSON RPC URL and paste incorrect URL'):
|
with step('Click in Main JSON RPC URL and paste incorrect URL'):
|
||||||
edit_network_form.edit_network_main_json_rpc_url_input("https://eth-archival.gateway.pokt.network/v1/lb/")
|
edit_network_form.edit_network_main_json_rpc_url_input("https://eth-archival.gateway.pokt.network/v1/lb/")
|
||||||
|
|
||||||
with step('Check error message'):
|
with step('Check error message for Main JSON RPC URL input'):
|
||||||
assert edit_network_form.self._network_edit_error_message() == 'test'
|
assert driver.waitFor(
|
||||||
|
lambda: edit_network_form.get_main_rpc_url_error_message_text() == WalletEditNetworkErrorMessages.PINGUNSUCCESSFUL.value)
|
||||||
|
|
||||||
with step('Click in Failover JSON RPC URL and paste incorrect URL'):
|
with step('Click in Failover JSON RPC URL and paste incorrect URL'):
|
||||||
edit_network_form.edit_network_failover_json_rpc_url_input("https://eth-archival.gateway.pokt.network/v1/lb/")
|
edit_network_form.edit_network_failover_json_rpc_url_input("https://eth-archival.gateway.pokt.network/v1/lb/")
|
||||||
|
|
||||||
|
with step('Check error message for Failover JSON RPC URL input'):
|
||||||
|
assert driver.waitFor(
|
||||||
|
lambda: edit_network_form.get_failover_rpc_url_error_message_text() == WalletEditNetworkErrorMessages.PINGUNSUCCESSFUL.value)
|
||||||
|
|
||||||
with step('Check the acknowledgment checkbox'):
|
with step('Check the acknowledgment checkbox'):
|
||||||
edit_network_form.check_acknowledgement_checkbox(True)
|
edit_network_form.check_acknowledgement_checkbox(True)
|
||||||
|
|
||||||
|
with step('Check the acknowledgment text'):
|
||||||
|
assert edit_network_form.get_acknowledgement_checkbox_text(
|
||||||
|
'text') == WalletNetworkSettings.ACKNOWLEDGMENT_CHECKBOX_TEXT.value
|
||||||
|
|
||||||
with step('Click Revert to default button and restore values'):
|
with step('Click Revert to default button and restore values'):
|
||||||
edit_network_form.click_network_revert_to_default()
|
edit_network_form.revert_to_default()
|
||||||
|
|
||||||
with step('Check value in Main JSON RPC URL input'):
|
with step('Check value in Main JSON RPC URL input'):
|
||||||
assert edit_network_form.get_edit_network_main_json_rpc_url_value() == WalletNetworkDefaultValues.ETHEREUM_LIVE_MAIN.value
|
assert edit_network_form.get_edit_network_main_json_rpc_url_value() == WalletNetworkDefaultValues.ETHEREUM_LIVE_MAIN.value
|
||||||
|
|
||||||
|
with step('Check successful connection message for Main JSON RPC URL input'):
|
||||||
|
assert driver.waitFor(
|
||||||
|
lambda: edit_network_form.get_main_rpc_url_error_message_text() == WalletEditNetworkErrorMessages.PINGVERIFIED.value)
|
||||||
|
|
||||||
with (step('Check value in Failover JSON RPC URL input')):
|
with (step('Check value in Failover JSON RPC URL input')):
|
||||||
assert edit_network_form.get_edit_network_failover_json_rpc_url_value() == WalletNetworkDefaultValues.ETHEREUM_LIVE_FAILOVER.value
|
assert edit_network_form.get_edit_network_failover_json_rpc_url_value() == WalletNetworkDefaultValues.ETHEREUM_LIVE_FAILOVER.value
|
||||||
|
|
||||||
|
with step('Check successful connection message for Failover JSON RPC URL input'):
|
||||||
|
assert driver.waitFor(
|
||||||
|
lambda: edit_network_form.get_failover_rpc_url_error_message_text() == WalletEditNetworkErrorMessages.PINGVERIFIED.value)
|
||||||
|
|
||||||
with step('Verify the acknowledgment checkbox is unchecked'):
|
with step('Verify the acknowledgment checkbox is unchecked'):
|
||||||
assert edit_network_form.check_acknowledgement_checkbox(False)
|
assert edit_network_form.check_acknowledgement_checkbox(False)
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user