Ejemplo n.º 1
0
    def test_reset_password(self, selenium, timeout, new_user):
        # sign in as a new user
        from bidpom.pages.sign_in import SignIn
        signin = SignIn(selenium, timeout)
        signin.sign_in_new_user(new_user['email'], new_user['password'])
        mail = restmail.get_mail(new_user['email'])
        selenium.get(re.search(BIDPOM.VERIFY_URL_REGEX, mail[0]['text']).group(0))
        from bidpom.pages.complete_registration import CompleteRegistration
        complete_registration = CompleteRegistration(selenium, timeout)
        assert new_user['email'] in complete_registration.user_loggedin
        self.log_out(selenium, timeout)

        # forgot password
        selenium.find_element(*self._persona_login_button_locator).click()
        from bidpom.pages.sign_in import SignIn
        signin = SignIn(selenium, timeout)
        signin.click_this_is_not_me()
        signin.email = new_user['email']
        signin.click_next()
        signin.click_forgot_password()
        signin.switch_to_main_window()
        mail = restmail.get_mail(new_user['email'], message_count=2)
        assert 'Click to reset your password' in mail[1]['text']

        # reset password
        new_user['password'] = '******'.format(new_user)
        selenium.get(re.search(BIDPOM.RESET_URL_REGEX, mail[1]['text']).group(0))
        from bidpom.pages.reset_password import ResetPassword
        reset_password = ResetPassword(selenium, timeout).wait_for_page_to_load()
        reset_password.new_password = new_user['password']
        reset_password.verify_password = new_user['password']
        reset_password.click_finish()
        assert '{0[email]} has been verified!'.format(new_user) in reset_password.thank_you
Ejemplo n.º 2
0
    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
Ejemplo n.º 3
0
    def test_add_email(self, base_url, selenium, timeout, verified_user, new_email):
        bidpom = BIDPOM(selenium, timeout)
        bidpom.sign_in(verified_user['email'], verified_user['password'])
        WebDriverWait(selenium, timeout).until(lambda s: s.find_element(
            *self._persona_logged_in_indicator_locator).is_displayed())
        self.log_out(selenium, timeout)
        selenium.find_element(*self._persona_login_button_locator).click()

        from bidpom.pages.sign_in import SignIn
        signin = SignIn(selenium, timeout)
        signin.click_add_another_email_address()
        signin.new_email = new_email
        assert signin.new_email == new_email, 'new email getter failed'
        signin.click_add_new_email()
        signin.close_window()
        signin.switch_to_main_window()
        mail = restmail.get_mail(new_email)

        # Check that the email appears to be valid
        self.email_appears_valid(mail[0]['text'])

        selenium.get(re.search(BIDPOM.CONFIRM_URL_REGEX, mail[0]['text']).group(0))
        from bidpom.pages.complete_registration import CompleteRegistration
        complete_registration = CompleteRegistration(selenium, timeout)
        assert new_email in complete_registration.user_loggedin

        selenium.get(base_url)
        self.log_out(selenium, timeout)

        selenium.find_element(*self._persona_login_button_locator).click()
        signin = SignIn(selenium, timeout)
        assert new_email in signin.emails
        assert new_email == signin.selected_email
Ejemplo n.º 4
0
    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_by_css_selector('#loggedout button').click()

        from .. pages.sign_in import SignIn
        signin = SignIn(mozwebqa.selenium, mozwebqa.timeout, expect='returning')
        signin.click_this_is_not_me()
        signin.email = user.primary_email
        signin.click_next()
        signin.click_forgot_password()
        user.password += '_new'
        signin.register_password = user.password
        signin.verify_password = user.password
        signin.click_reset_password()
        assert signin.check_email_at_address == user.primary_email

        signin.close_window()
        signin.switch_to_main_window()
        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)
        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
Ejemplo n.º 5
0
    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_by_css_selector('#loggedout button').click()

        from .. pages.sign_in import SignIn
        signin = SignIn(mozwebqa.selenium, mozwebqa.timeout, expect='returning')
        signin.click_this_is_not_me()
        signin.email = user.primary_email
        signin.click_next()
        signin.click_forgot_password()
        user.password += '_new'
        signin.password = user.password
        signin.verify_password = user.password
        signin.click_reset_password()
        assert signin.check_email_at_address == user.primary_email

        signin.close_window()
        signin.switch_to_main_window()
        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)

        from .. pages.complete_registration import CompleteRegistration
        complete_registration = CompleteRegistration(mozwebqa.selenium,
            mozwebqa.timeout, reset_url, expect='redirect')
Ejemplo n.º 6
0
 def test_sign_in_new_user_helper(self, mozwebqa):
     user = MockUser()
     from ..pages.sign_in import SignIn
     signin = SignIn(mozwebqa.selenium, mozwebqa.timeout, expect='new')
     print 'signing in as %s' % user.primary_email
     signin.sign_in_new_user(user.primary_email, 'password')
     mail = restmail.get_mail(user.primary_email, timeout=mozwebqa.timeout)
     assert 'Click to confirm this email address' in mail[0]['text']
Ejemplo n.º 7
0
    def test_sign_in_new_user_helper(self, new_user, selenium, timeout):
        from bidpom.pages.sign_in import SignIn
        signin = SignIn(selenium, timeout)
        signin.sign_in_new_user(new_user['email'], new_user['password'])
        mail = restmail.get_mail(new_user['email'])

        # Check that the email appears to be valid
        self.email_appears_valid(mail[0]['text'])
Ejemplo n.º 8
0
 def test_sign_in_new_user_helper(self, mozwebqa):
     user = MockUser()
     from .. pages.sign_in import SignIn
     signin = SignIn(mozwebqa.selenium, mozwebqa.timeout, expect='new')
     print 'signing in as %s' % user.primary_email
     signin.sign_in_new_user(user.primary_email, 'password')
     mail = restmail.get_mail(user.primary_email, timeout=mozwebqa.timeout)
     assert 'Click to confirm this email address' in mail[0]['text']
Ejemplo n.º 9
0
    def test_sign_in_new_user_helper(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.sign_in_new_user(user.primary_email, 'password')
        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'])
Ejemplo n.º 10
0
    def create_verified_user(self, selenium, timeout):
        user = MockUser()
        from ..pages.sign_in import SignIn
        signin = SignIn(selenium, timeout, expect='new')
        signin.sign_in_new_user(user.primary_email, user.password)
        mail = restmail.get_mail(user.primary_email, timeout=timeout)
        verify_url = re.search(BrowserID.VERIFY_URL_REGEX,
                               mail[0]['text']).group(0)

        from ..pages.complete_registration import CompleteRegistration
        complete_registration = CompleteRegistration(selenium,
                                                     timeout,
                                                     verify_url,
                                                     expect='redirect')
        return user
Ejemplo n.º 11
0
Archivo: base.py Proyecto: AlinT/bidpom
    def create_verified_user(self, selenium, timeout):
        user = MockUser()
        from .. pages.sign_in import SignIn
        signin = SignIn(selenium, timeout, expect='new')
        signin.sign_in_new_user(user.primary_email, user.password)
        mail = restmail.get_mail(user.primary_email, timeout=timeout)
        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
        return user
Ejemplo n.º 12
0
    def test_sign_in_new_user(self, mozwebqa):
        user = MockUser()
        from .. pages.sign_in import SignIn
        signin = SignIn(mozwebqa.selenium, mozwebqa.timeout, expect='new')
        print 'signing in as %s' % user.primary_email
        signin.email = user.primary_email
        signin.click_next(expect='verify')
        signin.password = user.password
        signin.verify_password = user.password
        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)
        assert 'Click to confirm this email address' in mail[0]['text']
Ejemplo n.º 13
0
    def test_sign_in_new_user(self, mozwebqa):
        user = MockUser()
        from ..pages.sign_in import SignIn
        signin = SignIn(mozwebqa.selenium, mozwebqa.timeout, expect='new')
        print 'signing in as %s' % user.primary_email
        signin.email = user.primary_email
        signin.click_next(expect='verify')
        signin.password = user.password
        signin.verify_password = user.password
        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)
        assert 'Click to confirm this email address' in mail[0]['text']
Ejemplo n.º 14
0
    def test_add_email(self, mozwebqa):
        user = self.create_verified_user(mozwebqa.selenium, mozwebqa.timeout)
        user.additional_emails.append('*****@*****.**' % user.id)

        # log out
        mozwebqa.selenium.get('%s/' % mozwebqa.base_url)
        self.log_out(mozwebqa.selenium, mozwebqa.timeout)

        # 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]
        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)
        assert 'Click to confirm this email address' in mail[0]['text']
        confirm_url = re.search(BrowserID.CONFIRM_URL_REGEX,
                                mail[0]['text']).group(0)

        from ..pages.complete_registration import CompleteRegistration
        complete_registration = CompleteRegistration(mozwebqa.selenium,
                                                     mozwebqa.timeout,
                                                     confirm_url,
                                                     expect='redirect')

        self.log_out(mozwebqa.selenium, mozwebqa.timeout)

        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]
Ejemplo n.º 15
0
    def test_sign_in_new_user(self, new_user, selenium, timeout):
        from bidpom.pages.sign_in import SignIn
        signin = SignIn(selenium, timeout)
        signin.email = new_user['email']
        signin.click_next(expect='verify')
        signin.register_password = new_user['password']
        signin.verify_password = new_user['password']
        assert signin.verify_password == new_user['password'], 'verify password getter failed'
        signin.click_verify_email()
        assert signin.check_email_at_address == new_user['email']

        signin.close_window()
        signin.switch_to_main_window()
        mail = restmail.get_mail(new_user['email'])

        # Check that the email appears to be valid
        self.email_appears_valid(mail[0]['text'])
Ejemplo n.º 16
0
    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'])
Ejemplo n.º 17
0
    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]
Ejemplo n.º 18
0
    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_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]
        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)
        assert 'Click to confirm this email address' in mail[0]['text']
        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 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_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]
Ejemplo n.º 19
0
def login_link(username):
    mail = restmail.get_mail(username)
    mail_content = mail[0]['text'].replace('\n', ' ').replace('amp;', '').split(" ")
    for link in mail_content:
        if link.startswith("https"):
            return link