def test_reset_password(self, mozwebqa): user = self.create_verified_user(mozwebqa.selenium, mozwebqa.timeout) mozwebqa.selenium.get('%s/' % mozwebqa.base_url) self.log_out(mozwebqa.selenium, mozwebqa.timeout) mozwebqa.selenium.find_element(*self._persona_login_button_locator).click() from browserid.pages.sign_in import SignIn signin = SignIn(mozwebqa.selenium, mozwebqa.timeout) signin.click_this_is_not_me() signin.email = user.primary_email signin.click_next() signin.click_forgot_password() mail = restmail.get_mail(user.primary_email, message_count=2, timeout=mozwebqa.timeout) assert 'Click to reset your password' in mail[1]['text'] reset_url = re.search(BrowserID.RESET_URL_REGEX, mail[1]['text']).group(0) signin.switch_to_main_window() mozwebqa.selenium.get(reset_url) from browserid.pages.reset_password import ResetPassword reset_password = ResetPassword(mozwebqa.selenium) user.password += '_new' reset_password.new_password = user.password reset_password.verify_password = user.password reset_password.click_finish() assert '%s has been verified!' % user.primary_email in reset_password.thank_you
def test_sign_in_new_user(self, mozwebqa): user = MockUser() from browserid.pages.sign_in import SignIn signin = SignIn(mozwebqa.selenium, mozwebqa.timeout) print 'signing in as %s' % user.primary_email signin.email = user.primary_email signin.click_next(expect='verify') signin.register_password = user.password signin.verify_password = user.password assert signin.verify_password == user.password, 'verify password getter failed' signin.click_verify_email() assert signin.check_email_at_address == user.primary_email signin.close_window() signin.switch_to_main_window() mail = restmail.get_mail(user.primary_email, timeout=mozwebqa.timeout) # Check that the email appears to be valid self.email_appears_valid(mail[0]['text'])
def test_add_email(self, mozwebqa): user = self.create_verified_user(mozwebqa.selenium, mozwebqa.timeout) user.additional_emails.append('*****@*****.**' % user.id) mozwebqa.selenium.get('%s/' % mozwebqa.base_url) self.log_out(mozwebqa.selenium, mozwebqa.timeout) mozwebqa.selenium.find_element(*self._persona_login_button_locator).click() from browserid.pages.sign_in import SignIn signin = SignIn(mozwebqa.selenium, mozwebqa.timeout) signin.click_add_another_email_address() signin.new_email = user.additional_emails[0] assert signin.new_email == user.additional_emails[0], "new email getter failed" signin.click_add_new_email() signin.close_window() signin.switch_to_main_window() mail = restmail.get_mail(user.additional_emails[0], timeout=mozwebqa.timeout) # Check that the email appears to be valid self.email_appears_valid(mail[0]['text']) confirm_url = re.search( BrowserID.CONFIRM_URL_REGEX, mail[0]['text']).group(0) mozwebqa.selenium.get(confirm_url) from browserid.pages.complete_registration import CompleteRegistration complete_registration = CompleteRegistration(mozwebqa.selenium, mozwebqa.timeout, expect='success') assert user.additional_emails[0] in complete_registration.user_loggedin mozwebqa.selenium.get('%s/' % mozwebqa.base_url) self.log_out(mozwebqa.selenium, mozwebqa.timeout) mozwebqa.selenium.find_element(*self._persona_login_button_locator).click() signin = SignIn(mozwebqa.selenium, mozwebqa.timeout) assert user.additional_emails[0] in signin.emails assert signin.selected_email == user.additional_emails[0]