From a62d73a3760bf2227550df2f8673e2b77497a908 Mon Sep 17 00:00:00 2001 From: Leah Klearman <lklrmn@gmail.com> Date: Fri, 31 Aug 2012 16:18:24 -0700 Subject: [PATCH] both 123done and bidpom tests pass now 123done/tests/test_change_password.py . 123done/tests/test_logout.py . 123done/tests/test_new_user.py . 123done/tests/test_sign_in.py . = 4 passed in 318.50 seconds = browserid/tests/check_add_email.py . browserid/tests/check_change_password.py . browserid/tests/check_reset_password.py . browserid/tests/check_sign_in.py ...... = 9 passed in 863.19 seconds = --- automation-tests/123done/pages/home.py | 4 ++++ .../123done/tests/test_change_password.py | 2 +- automation-tests/123done/tests/test_new_user.py | 3 +-- .../browserid/pages/complete_registration.py | 4 ++-- automation-tests/browserid/tests/base.py | 6 ++---- .../browserid/tests/check_add_email.py | 14 +++++++------- .../browserid/tests/check_reset_password.py | 5 +---- 7 files changed, 18 insertions(+), 20 deletions(-) diff --git a/automation-tests/123done/pages/home.py b/automation-tests/123done/pages/home.py index 59ff30b71..346775203 100644 --- a/automation-tests/123done/pages/home.py +++ b/automation-tests/123done/pages/home.py @@ -61,6 +61,10 @@ class HomePage(Page): @property def logged_in_user_email(self): + WebDriverWait(self.selenium, self.timeout).until( + lambda s: self.is_element_visible(*self._logged_in_user_email_locator)and not \ + self.is_element_visible(*self._loading_spinner_locator), + "Timeout waiting for user's email to appear.") return self.selenium.find_element(*self._logged_in_user_email_locator).text def wait_for_user_login(self): diff --git a/automation-tests/123done/tests/test_change_password.py b/automation-tests/123done/tests/test_change_password.py index 344b67cab..2c6f01525 100644 --- a/automation-tests/123done/tests/test_change_password.py +++ b/automation-tests/123done/tests/test_change_password.py @@ -28,7 +28,7 @@ class TestChangePassword: # Load the BrowserID link from the email in the browser from browserid.pages.complete_registration import CompleteRegistration - CompleteRegistration(mozwebqa.selenium, email.verify_user_link) + CompleteRegistration(mozwebqa.selenium, mozwebqa.timeout, email.verify_user_link) mozwebqa.selenium.get(mozwebqa.server_base_url) from browserid.pages.account_manager import AccountManager diff --git a/automation-tests/123done/tests/test_new_user.py b/automation-tests/123done/tests/test_new_user.py index 832305c51..96abd3b55 100644 --- a/automation-tests/123done/tests/test_new_user.py +++ b/automation-tests/123done/tests/test_new_user.py @@ -28,7 +28,6 @@ class TestNewAccount: # Load the BrowserID link from the email in the browser from browserid.pages.complete_registration import CompleteRegistration - complete_registration = CompleteRegistration(mozwebqa.selenium, email.verify_user_link) + complete_registration = CompleteRegistration(mozwebqa.selenium, mozwebqa.timeout, email.verify_user_link) - home_pg.go_to_home_page() Assert.equal(home_pg.logged_in_user_email, user['email']) diff --git a/automation-tests/browserid/pages/complete_registration.py b/automation-tests/browserid/pages/complete_registration.py index a08bec829..acd9723b5 100644 --- a/automation-tests/browserid/pages/complete_registration.py +++ b/automation-tests/browserid/pages/complete_registration.py @@ -18,14 +18,14 @@ class CompleteRegistration(Base): _finish_locator = (By.CSS_SELECTOR, 'div.submit > button') _thank_you_locator = (By.ID, 'congrats') - def __init__(self, mozwebqa, url, expect='redirect'): + def __init__(self, selenium, timeout, url, expect='redirect'): """ class init method :Args: - url - the confirmation url from the email - expect - redirect/success/reset/verify (default redirect) """ - Base.__init__(self, mozwebqa) + Base.__init__(self, selenium, timeout) print "the url" + url self.selenium.get(url) diff --git a/automation-tests/browserid/tests/base.py b/automation-tests/browserid/tests/base.py index 8adf6357c..e7408f625 100644 --- a/automation-tests/browserid/tests/base.py +++ b/automation-tests/browserid/tests/base.py @@ -40,10 +40,8 @@ class BaseTest(object): verify_url = re.search(BrowserID.VERIFY_URL_REGEX, mail[0]['text']).group(0) - selenium.get(verify_url) from .. pages.complete_registration import CompleteRegistration complete_registration = CompleteRegistration(selenium, - timeout, - expect='success') - assert 'Thank you' in complete_registration.thank_you + timeout, verify_url, + expect='redirect') return user diff --git a/automation-tests/browserid/tests/check_add_email.py b/automation-tests/browserid/tests/check_add_email.py index 79e1e00f9..b52bde2ee 100644 --- a/automation-tests/browserid/tests/check_add_email.py +++ b/automation-tests/browserid/tests/check_add_email.py @@ -21,12 +21,15 @@ class TestSignIn(BaseTest): user = self.create_verified_user(mozwebqa.selenium, mozwebqa.timeout) user.additional_emails.append('%s_1@restmail.net' % user.id) + # log out mozwebqa.selenium.get('%s/' % mozwebqa.base_url) self.log_out(mozwebqa.selenium, mozwebqa.timeout) - mozwebqa.selenium.find_element_by_css_selector('#loggedout button').click() + # initiate add email + mozwebqa.selenium.find_element_by_css_selector('#loggedout button').click() from .. pages.sign_in import SignIn signin = SignIn(mozwebqa.selenium, mozwebqa.timeout, expect='returning') + signin.click_add_another_email_address() signin.new_email = user.additional_emails[0] signin.click_add_new_email() @@ -39,17 +42,14 @@ class TestSignIn(BaseTest): confirm_url = re.search(BrowserID.CONFIRM_URL_REGEX, mail[0]['text']).group(0) - mozwebqa.selenium.get(confirm_url) from .. pages.complete_registration import CompleteRegistration complete_registration = CompleteRegistration(mozwebqa.selenium, - mozwebqa.timeout, - expect='success') - assert 'Your address has been verified' in complete_registration.thank_you + mozwebqa.timeout, confirm_url, expect='redirect') - mozwebqa.selenium.get('%s/' % mozwebqa.base_url) self.log_out(mozwebqa.selenium, mozwebqa.timeout) - mozwebqa.selenium.find_element_by_css_selector('#loggedout button').click() + mozwebqa.selenium.find_element_by_css_selector('#loggedout button').click() signin = SignIn(mozwebqa.selenium, mozwebqa.timeout, expect='returning') + assert user.additional_emails[0] in signin.emails assert signin.selected_email == user.additional_emails[0] diff --git a/automation-tests/browserid/tests/check_reset_password.py b/automation-tests/browserid/tests/check_reset_password.py index 6dced8357..78fe844a3 100644 --- a/automation-tests/browserid/tests/check_reset_password.py +++ b/automation-tests/browserid/tests/check_reset_password.py @@ -44,10 +44,7 @@ class TestSignIn(BaseTest): reset_url = re.search(BrowserID.RESET_URL_REGEX, mail[1]['text']).group(0) - mozwebqa.selenium.get(reset_url) from .. pages.complete_registration import CompleteRegistration complete_registration = CompleteRegistration(mozwebqa.selenium, - mozwebqa.timeout, - expect='success') - assert 'Your address has been verified!' in complete_registration.thank_you + mozwebqa.timeout, reset_url, expect='redirect') -- GitLab