Exemplo n.º 1
0
def test_set_new_password(party_account_fixture):
    fixture = party_account_fixture

    system_account = fixture.system_account
    new_password_request = NewPasswordRequest(system_account=system_account)
    Session.add(new_password_request)
    new_password = system_account.password * 2
    account_management_interface = AccountManagementInterface()
    Session.add(account_management_interface)

    # Case: the key is invalid
    invalid_key = 'in va lid key which is also too long and contains spaces'
    account_management_interface.email = system_account.email
    account_management_interface.secret = invalid_key
    account_management_interface.password = new_password
    with expected(KeyException):
        account_management_interface.choose_new_password()

    # Case: the email is invalid
    invalid_email = 'i am not a valid email'
    account_management_interface.email = invalid_email
    account_management_interface.secret = new_password_request.as_secret_key()
    account_management_interface.password = new_password
    with expected(InvalidEmailException):
        account_management_interface.choose_new_password()

    # Case: the key is valid
    account_management_interface.email = system_account.email
    account_management_interface.secret = new_password_request.as_secret_key()
    account_management_interface.password = new_password
    account_management_interface.choose_new_password()
    system_account.authenticate(new_password)  # Should not raise exception
Exemplo n.º 2
0
    def reset_password_from_url(self, fixture):
        account = fixture.system_account
        new_password_request = NewPasswordRequest(system_account=account)
        Session.add(new_password_request)

        fixture.browser.open('/a_ui/choosePassword?email=%s&secret=%s' % \
                             (account.email, new_password_request.as_secret_key()))
        new_password = '******'
        fixture.browser.type('//input[@name="password"]', new_password )
        fixture.browser.type('//input[@name="repeat_password"]', new_password )
        fixture.browser.click('//input[@value="Set new password"]')

        vassert( fixture.browser.location_path == '/a_ui/passwordChanged' )
Exemplo n.º 3
0
def test_reset_password_from_url(web_fixture, party_account_fixture,
                                 accounts_web_fixture):
    fixture = accounts_web_fixture
    account = party_account_fixture.system_account
    new_password_request = NewPasswordRequest(system_account=account)
    Session.add(new_password_request)

    fixture.browser.open('/a_ui/choosePassword?choose_password-email=%s&choose_password-secret=%s' % \
                         (account.email, new_password_request.as_secret_key()))
    new_password = '******'
    fixture.browser.type(XPath.input_labelled('Password'), new_password)
    fixture.browser.type(XPath.input_labelled('Re-type password'),
                         new_password)
    fixture.browser.click(XPath.button_labelled('Set new password'))

    assert fixture.browser.current_url.path == '/a_ui/passwordChanged'
Exemplo n.º 4
0
def test_reset_password_from_url(web_fixture, party_account_fixture,
                                 accounts_web_fixture):
    fixture = accounts_web_fixture
    account = party_account_fixture.system_account
    new_password_request = NewPasswordRequest(system_account=account)
    Session.add(new_password_request)

    fixture.browser.open('/a_ui/choosePassword?choose_password-email=%s&choose_password-secret=%s' % \
                         (account.email, new_password_request.as_secret_key()))
    new_password = '******'
    fixture.browser.type('//input[@name="choose_password-password"]',
                         new_password)
    fixture.browser.type('//input[@name="choose_password-repeat_password"]',
                         new_password)
    fixture.browser.click('//input[@value="Set new password"]')

    assert fixture.browser.current_url.path == '/a_ui/passwordChanged'