chore(@onborading): added several verifications (#117)
This commit is contained in:
parent
f5f94a70d4
commit
230fe2aa02
|
@ -3,6 +3,7 @@ import allure
|
||||||
from gui.components.base_popup import BasePopup
|
from gui.components.base_popup import BasePopup
|
||||||
from gui.elements.qt.button import Button
|
from gui.elements.qt.button import Button
|
||||||
from gui.elements.qt.check_box import CheckBox
|
from gui.elements.qt.check_box import CheckBox
|
||||||
|
from gui.elements.qt.object import QObject
|
||||||
|
|
||||||
|
|
||||||
class BeforeStartedPopUp(BasePopup):
|
class BeforeStartedPopUp(BasePopup):
|
||||||
|
@ -12,6 +13,8 @@ class BeforeStartedPopUp(BasePopup):
|
||||||
self._acknowledge_checkbox = CheckBox('acknowledge_checkbox')
|
self._acknowledge_checkbox = CheckBox('acknowledge_checkbox')
|
||||||
self._terms_of_use_checkBox = CheckBox('termsOfUseCheckBox_StatusCheckBox')
|
self._terms_of_use_checkBox = CheckBox('termsOfUseCheckBox_StatusCheckBox')
|
||||||
self._get_started_button = Button('getStartedStatusButton_StatusButton')
|
self._get_started_button = Button('getStartedStatusButton_StatusButton')
|
||||||
|
self._terms_of_use_link = QObject('termsOfUseLink_StatusBaseText')
|
||||||
|
self._privacy_policy_link = QObject('privacyPolicyLink_StatusBaseText')
|
||||||
|
|
||||||
@property
|
@property
|
||||||
@allure.step('Get visible attribute')
|
@allure.step('Get visible attribute')
|
||||||
|
@ -22,5 +25,7 @@ class BeforeStartedPopUp(BasePopup):
|
||||||
def get_started(self):
|
def get_started(self):
|
||||||
self._acknowledge_checkbox.set(True)
|
self._acknowledge_checkbox.set(True)
|
||||||
self._terms_of_use_checkBox.set(True, x=10)
|
self._terms_of_use_checkBox.set(True, x=10)
|
||||||
|
assert self._terms_of_use_link.is_visible, f"Terms of use link is missing"
|
||||||
|
assert self._privacy_policy_link.is_visible, f"Privacy Policy link is missing"
|
||||||
self._get_started_button.click()
|
self._get_started_button.click()
|
||||||
self.wait_until_hidden()
|
self.wait_until_hidden()
|
||||||
|
|
|
@ -5,13 +5,13 @@ from gui.elements.qt.button import Button
|
||||||
from gui.elements.qt.check_box import CheckBox
|
from gui.elements.qt.check_box import CheckBox
|
||||||
|
|
||||||
|
|
||||||
class WelcomeStatusPopup(BasePopup):
|
class BetaConsentPopup(BasePopup):
|
||||||
|
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
self._agree_to_use_checkbox = CheckBox('agreeToUse_StatusCheckBox')
|
self._agree_to_use_checkbox = CheckBox('agreeToUse_StatusCheckBox')
|
||||||
self._ready_to_use_checkbox = CheckBox('readyToUse_StatusCheckBox')
|
self._ready_to_use_checkbox = CheckBox('readyToUse_StatusCheckBox')
|
||||||
self._ready_to_use_button = Button('i_m_ready_to_use_Status_Desktop_Beta_StatusButton')
|
self._ready_to_use_button = Button('i_m_ready_to_use_Status_Desktop_Beta_StatusButton')
|
||||||
super(WelcomeStatusPopup, self).__init__()
|
super(BetaConsentPopup, self).__init__()
|
||||||
|
|
||||||
@allure.step('Confirm all')
|
@allure.step('Confirm all')
|
||||||
def confirm(self):
|
def confirm(self):
|
|
@ -9,7 +9,7 @@ import driver
|
||||||
from constants import UserAccount
|
from constants import UserAccount
|
||||||
from gui.components.community.invite_contacts import InviteContactsPopup
|
from gui.components.community.invite_contacts import InviteContactsPopup
|
||||||
from gui.components.onboarding.before_started_popup import BeforeStartedPopUp
|
from gui.components.onboarding.before_started_popup import BeforeStartedPopUp
|
||||||
from gui.components.onboarding.welcome_status_popup import WelcomeStatusPopup
|
from gui.components.onboarding.beta_consent_popup import BetaConsentPopup
|
||||||
from gui.components.splash_screen import SplashScreen
|
from gui.components.splash_screen import SplashScreen
|
||||||
from gui.components.user_canvas import UserCanvas
|
from gui.components.user_canvas import UserCanvas
|
||||||
from gui.elements.qt.button import Button
|
from gui.elements.qt.button import Button
|
||||||
|
@ -18,7 +18,7 @@ from gui.elements.qt.window import Window
|
||||||
from gui.screens.community import CommunityScreen
|
from gui.screens.community import CommunityScreen
|
||||||
from gui.screens.community_portal import CommunitiesPortal
|
from gui.screens.community_portal import CommunitiesPortal
|
||||||
from gui.screens.messages import MessagesScreen
|
from gui.screens.messages import MessagesScreen
|
||||||
from gui.screens.onboarding import AllowNotificationsView, WelcomeView, TouchIDAuthView, LoginView
|
from gui.screens.onboarding import AllowNotificationsView, WelcomeToStatusView, BiometricsView, LoginView
|
||||||
from gui.screens.settings import SettingsScreen
|
from gui.screens.settings import SettingsScreen
|
||||||
from gui.screens.wallet import WalletScreen
|
from gui.screens.wallet import WalletScreen
|
||||||
from scripts.tools.image import Image
|
from scripts.tools.image import Image
|
||||||
|
@ -135,7 +135,7 @@ class MainWindow(Window):
|
||||||
if configs.system.IS_MAC:
|
if configs.system.IS_MAC:
|
||||||
AllowNotificationsView().wait_until_appears().allow()
|
AllowNotificationsView().wait_until_appears().allow()
|
||||||
BeforeStartedPopUp().get_started()
|
BeforeStartedPopUp().get_started()
|
||||||
wellcome_screen = WelcomeView().wait_until_appears()
|
wellcome_screen = WelcomeToStatusView().wait_until_appears()
|
||||||
profile_view = wellcome_screen.get_keys().generate_new_keys()
|
profile_view = wellcome_screen.get_keys().generate_new_keys()
|
||||||
profile_view.set_display_name(user_account.name)
|
profile_view.set_display_name(user_account.name)
|
||||||
details_view = profile_view.next()
|
details_view = profile_view.next()
|
||||||
|
@ -143,10 +143,10 @@ class MainWindow(Window):
|
||||||
confirm_password_view = create_password_view.create_password(user_account.password)
|
confirm_password_view = create_password_view.create_password(user_account.password)
|
||||||
confirm_password_view.confirm_password(user_account.password)
|
confirm_password_view.confirm_password(user_account.password)
|
||||||
if configs.system.IS_MAC:
|
if configs.system.IS_MAC:
|
||||||
TouchIDAuthView().wait_until_appears().prefer_password()
|
BiometricsView().wait_until_appears().prefer_password()
|
||||||
SplashScreen().wait_until_appears().wait_until_hidden()
|
SplashScreen().wait_until_appears().wait_until_hidden()
|
||||||
if not configs.DEV_BUILD:
|
if not configs.DEV_BUILD:
|
||||||
WelcomeStatusPopup().confirm()
|
BetaConsentPopup().confirm()
|
||||||
return self
|
return self
|
||||||
|
|
||||||
@allure.step('Log in user')
|
@allure.step('Log in user')
|
||||||
|
@ -154,7 +154,7 @@ class MainWindow(Window):
|
||||||
LoginView().log_in(user_account)
|
LoginView().log_in(user_account)
|
||||||
SplashScreen().wait_until_appears().wait_until_hidden()
|
SplashScreen().wait_until_appears().wait_until_hidden()
|
||||||
if not configs.DEV_BUILD:
|
if not configs.DEV_BUILD:
|
||||||
WelcomeStatusPopup().wait_until_appears().confirm()
|
BetaConsentPopup().wait_until_appears().confirm()
|
||||||
return self
|
return self
|
||||||
|
|
||||||
@allure.step('Authorize user')
|
@allure.step('Authorize user')
|
||||||
|
|
|
@ -15,6 +15,8 @@ o_StatusListView = {"container": statusDesktop_mainWindow_overlay, "type": "Stat
|
||||||
acknowledge_checkbox = {"checkable": True, "container": statusDesktop_mainWindow_overlay, "objectName": "acknowledgeCheckBox", "type": "StatusCheckBox", "visible": True}
|
acknowledge_checkbox = {"checkable": True, "container": statusDesktop_mainWindow_overlay, "objectName": "acknowledgeCheckBox", "type": "StatusCheckBox", "visible": True}
|
||||||
termsOfUseCheckBox_StatusCheckBox = {"checkable": True, "container": statusDesktop_mainWindow_overlay, "objectName":"termsOfUseCheckBox", "type": "StatusCheckBox", "visible": True}
|
termsOfUseCheckBox_StatusCheckBox = {"checkable": True, "container": statusDesktop_mainWindow_overlay, "objectName":"termsOfUseCheckBox", "type": "StatusCheckBox", "visible": True}
|
||||||
getStartedStatusButton_StatusButton = {"container": statusDesktop_mainWindow_overlay, "objectName": "getStartedStatusButton", "type": "StatusButton", "visible": True}
|
getStartedStatusButton_StatusButton = {"container": statusDesktop_mainWindow_overlay, "objectName": "getStartedStatusButton", "type": "StatusButton", "visible": True}
|
||||||
|
termsOfUseLink_StatusBaseText = {"container": statusDesktop_mainWindow_overlay, "objectName": "termsOfUseLink", "type": "StatusBaseText", "visible": True}
|
||||||
|
privacyPolicyLink_StatusBaseText = {"container": statusDesktop_mainWindow_overlay, "objectName": "privacyPolicyLink", "type": "StatusBaseText", "visible": True}
|
||||||
|
|
||||||
# Back Up Your Seed Phrase Popup
|
# Back Up Your Seed Phrase Popup
|
||||||
o_PopupItem = {"container": statusDesktop_mainWindow_overlay, "type": "PopupItem", "unnamed": 1, "visible": True}
|
o_PopupItem = {"container": statusDesktop_mainWindow_overlay, "type": "PopupItem", "unnamed": 1, "visible": True}
|
||||||
|
|
|
@ -83,4 +83,5 @@ accountsView_accountListPanel = {"container": statusDesktop_mainWindow, "objectN
|
||||||
|
|
||||||
# Touch ID Auth View
|
# Touch ID Auth View
|
||||||
mainWindow_TouchIDAuthView = {"container": statusDesktop_mainWindow, "type": "TouchIDAuthView", "unnamed": 1, "visible": True}
|
mainWindow_TouchIDAuthView = {"container": statusDesktop_mainWindow, "type": "TouchIDAuthView", "unnamed": 1, "visible": True}
|
||||||
|
mainWindow_touchIdYesUseTouchIDButton = {"container": statusDesktop_mainWindow, "objectName": "touchIdYesUseTouchIDButton", "type": "StatusButton", "visible": True}
|
||||||
mainWindow_touchIdIPreferToUseMyPasswordText = {"container": statusDesktop_mainWindow, "objectName": "touchIdIPreferToUseMyPasswordText", "type": "StatusBaseText"}
|
mainWindow_touchIdIPreferToUseMyPasswordText = {"container": statusDesktop_mainWindow, "objectName": "touchIdIPreferToUseMyPasswordText", "type": "StatusBaseText"}
|
||||||
|
|
|
@ -32,16 +32,16 @@ class AllowNotificationsView(QObject):
|
||||||
self.wait_until_hidden()
|
self.wait_until_hidden()
|
||||||
|
|
||||||
|
|
||||||
class WelcomeView(QObject):
|
class WelcomeToStatusView(QObject):
|
||||||
|
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
super(WelcomeView, self).__init__('mainWindow_WelcomeView')
|
super(WelcomeToStatusView, self).__init__('mainWindow_WelcomeView')
|
||||||
self._new_user_button = Button('mainWindow_I_am_new_to_Status_StatusBaseText')
|
self._i_am_new_to_status_button = Button('mainWindow_I_am_new_to_Status_StatusBaseText')
|
||||||
self._existing_user_button = Button('mainWindow_I_already_use_Status_StatusBaseText')
|
self._i_already_use_status_button = Button('mainWindow_I_already_use_Status_StatusBaseText')
|
||||||
|
|
||||||
@allure.step('Open Keys view')
|
@allure.step('Open Keys view')
|
||||||
def get_keys(self) -> 'KeysView':
|
def get_keys(self) -> 'KeysView':
|
||||||
self._new_user_button.click()
|
self._i_am_new_to_status_button.click()
|
||||||
time.sleep(1)
|
time.sleep(1)
|
||||||
return KeysView().wait_until_appears()
|
return KeysView().wait_until_appears()
|
||||||
|
|
||||||
|
@ -81,9 +81,9 @@ class KeysView(OnboardingView):
|
||||||
return ImportSeedPhraseView().wait_until_appears()
|
return ImportSeedPhraseView().wait_until_appears()
|
||||||
|
|
||||||
@allure.step('Go back')
|
@allure.step('Go back')
|
||||||
def back(self) -> WelcomeView:
|
def back(self) -> WelcomeToStatusView:
|
||||||
self._back_button.click()
|
self._back_button.click()
|
||||||
return WelcomeView().wait_until_appears()
|
return WelcomeToStatusView().wait_until_appears()
|
||||||
|
|
||||||
|
|
||||||
class ImportSeedPhraseView(OnboardingView):
|
class ImportSeedPhraseView(OnboardingView):
|
||||||
|
@ -313,10 +313,11 @@ class ConfirmPasswordView(OnboardingView):
|
||||||
return CreatePasswordView().wait_until_appears()
|
return CreatePasswordView().wait_until_appears()
|
||||||
|
|
||||||
|
|
||||||
class TouchIDAuthView(OnboardingView):
|
class BiometricsView(OnboardingView):
|
||||||
|
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
super(TouchIDAuthView, self).__init__('mainWindow_TouchIDAuthView')
|
super(BiometricsView, self).__init__('mainWindow_TouchIDAuthView')
|
||||||
|
self._yes_use_touch_id_button = Button('mainWindow_touchIdYesUseTouchIDButton')
|
||||||
self._prefer_password_button = Button('mainWindow_touchIdIPreferToUseMyPasswordText')
|
self._prefer_password_button = Button('mainWindow_touchIdIPreferToUseMyPasswordText')
|
||||||
|
|
||||||
@allure.step('Select prefer password')
|
@allure.step('Select prefer password')
|
||||||
|
@ -324,6 +325,11 @@ class TouchIDAuthView(OnboardingView):
|
||||||
self._prefer_password_button.click()
|
self._prefer_password_button.click()
|
||||||
self.wait_until_hidden()
|
self.wait_until_hidden()
|
||||||
|
|
||||||
|
@allure.step('Verify TouchID button')
|
||||||
|
def is_touch_id_button_visible(self):
|
||||||
|
return self._yes_use_touch_id_button.is_visible
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
class LoginView(QObject):
|
class LoginView(QObject):
|
||||||
|
|
||||||
|
|
|
@ -24,6 +24,7 @@ class WalletScreen(QObject):
|
||||||
super().__init__('mainWindow_WalletLayout')
|
super().__init__('mainWindow_WalletLayout')
|
||||||
self.left_panel = LeftPanel()
|
self.left_panel = LeftPanel()
|
||||||
|
|
||||||
|
|
||||||
class LeftPanel(QObject):
|
class LeftPanel(QObject):
|
||||||
|
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
|
@ -99,7 +100,7 @@ class LeftPanel(QObject):
|
||||||
return AccountPopup().wait_until_appears()
|
return AccountPopup().wait_until_appears()
|
||||||
except AssertionError as err:
|
except AssertionError as err:
|
||||||
if attempt:
|
if attempt:
|
||||||
self.open_add_account_popup(attempt-1)
|
self.open_add_account_popup(attempt - 1)
|
||||||
else:
|
else:
|
||||||
raise err
|
raise err
|
||||||
|
|
||||||
|
@ -125,6 +126,7 @@ class LeftPanel(QObject):
|
||||||
else:
|
else:
|
||||||
raise
|
raise
|
||||||
|
|
||||||
|
|
||||||
class SavedAdressesView(QObject):
|
class SavedAdressesView(QObject):
|
||||||
|
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
|
@ -188,4 +190,4 @@ class WalletAccountView(QObject):
|
||||||
@allure.step('Wait until appears {0}')
|
@allure.step('Wait until appears {0}')
|
||||||
def wait_until_appears(self, timeout_msec: int = configs.timeouts.UI_LOAD_TIMEOUT_MSEC):
|
def wait_until_appears(self, timeout_msec: int = configs.timeouts.UI_LOAD_TIMEOUT_MSEC):
|
||||||
self._account_name_text_label.wait_until_appears(timeout_msec)
|
self._account_name_text_label.wait_until_appears(timeout_msec)
|
||||||
return self
|
return self
|
||||||
|
|
|
@ -9,10 +9,10 @@ import constants
|
||||||
import driver
|
import driver
|
||||||
from driver.aut import AUT
|
from driver.aut import AUT
|
||||||
from gui.components.onboarding.before_started_popup import BeforeStartedPopUp
|
from gui.components.onboarding.before_started_popup import BeforeStartedPopUp
|
||||||
from gui.components.onboarding.welcome_status_popup import WelcomeStatusPopup
|
from gui.components.onboarding.beta_consent_popup import BetaConsentPopup
|
||||||
from gui.components.picture_edit_popup import shift_image
|
from gui.components.picture_edit_popup import shift_image
|
||||||
from gui.components.splash_screen import SplashScreen
|
from gui.components.splash_screen import SplashScreen
|
||||||
from gui.screens.onboarding import AllowNotificationsView, WelcomeView, TouchIDAuthView, KeysView
|
from gui.screens.onboarding import AllowNotificationsView, WelcomeToStatusView, BiometricsView, KeysView
|
||||||
from scripts.tools import image
|
from scripts.tools import image
|
||||||
|
|
||||||
_logger = logging.getLogger(__name__)
|
_logger = logging.getLogger(__name__)
|
||||||
|
@ -25,7 +25,7 @@ def keys_screen(main_window) -> KeysView:
|
||||||
if configs.system.IS_MAC:
|
if configs.system.IS_MAC:
|
||||||
AllowNotificationsView().wait_until_appears().allow()
|
AllowNotificationsView().wait_until_appears().allow()
|
||||||
BeforeStartedPopUp().get_started()
|
BeforeStartedPopUp().get_started()
|
||||||
wellcome_screen = WelcomeView().wait_until_appears()
|
wellcome_screen = WelcomeToStatusView().wait_until_appears()
|
||||||
return wellcome_screen.get_keys()
|
return wellcome_screen.get_keys()
|
||||||
|
|
||||||
|
|
||||||
|
@ -73,10 +73,11 @@ def test_generate_new_keys(main_window, keys_screen, user_name: str, password, u
|
||||||
confirm_password_view = create_password_view.create_password(password)
|
confirm_password_view = create_password_view.create_password(password)
|
||||||
confirm_password_view.confirm_password(password)
|
confirm_password_view.confirm_password(password)
|
||||||
if configs.system.IS_MAC:
|
if configs.system.IS_MAC:
|
||||||
TouchIDAuthView().wait_until_appears().prefer_password()
|
assert BiometricsView().is_touch_id_button_visible(), f"TouchID button is not found"
|
||||||
|
BiometricsView().wait_until_appears().prefer_password()
|
||||||
SplashScreen().wait_until_appears().wait_until_hidden()
|
SplashScreen().wait_until_appears().wait_until_hidden()
|
||||||
if not configs.DEV_BUILD:
|
if not configs.DEV_BUILD:
|
||||||
WelcomeStatusPopup().confirm()
|
BetaConsentPopup().confirm()
|
||||||
|
|
||||||
with step('Open User Canvas and verify user info'):
|
with step('Open User Canvas and verify user info'):
|
||||||
|
|
||||||
|
@ -122,10 +123,10 @@ def test_import_seed_phrase(aut: AUT, keys_screen, main_window, user_account):
|
||||||
confirm_password_view = create_password_view.create_password(user_account.password)
|
confirm_password_view = create_password_view.create_password(user_account.password)
|
||||||
confirm_password_view.confirm_password(user_account.password)
|
confirm_password_view.confirm_password(user_account.password)
|
||||||
if configs.system.IS_MAC:
|
if configs.system.IS_MAC:
|
||||||
TouchIDAuthView().wait_until_appears().prefer_password()
|
BiometricsView().wait_until_appears().prefer_password()
|
||||||
SplashScreen().wait_until_appears().wait_until_hidden()
|
SplashScreen().wait_until_appears().wait_until_hidden()
|
||||||
if not configs.DEV_BUILD:
|
if not configs.DEV_BUILD:
|
||||||
WelcomeStatusPopup().confirm()
|
BetaConsentPopup().confirm()
|
||||||
|
|
||||||
with step('Verify that the user logged in via seed phrase correctly'):
|
with step('Verify that the user logged in via seed phrase correctly'):
|
||||||
user_canvas = main_window.left_panel.open_user_canvas()
|
user_canvas = main_window.left_panel.open_user_canvas()
|
||||||
|
|
Loading…
Reference in New Issue