Merge pull request #1633 from gov-cjwaszczuk/master

Updated code used flow
This commit is contained in:
Chris Waszczuk
2017-11-09 17:11:28 +00:00
committed by GitHub
2 changed files with 10 additions and 6 deletions

View File

@@ -56,8 +56,9 @@ def two_factor_email(token):
logged_in, msg = user_api_client.check_verify_code(user_id, token_data['secret_code'], "email") logged_in, msg = user_api_client.check_verify_code(user_id, token_data['secret_code'], "email")
if not logged_in: if not logged_in:
flash("Theres something wrong with the code") flash("This link has already been used")
return redirect(url_for('.two_factor_email_sent')) session['user_details'] = {'id': user_id}
return redirect(url_for('.resend_email_link'))
return log_in_user(user_id) return log_in_user(user_id)

View File

@@ -276,7 +276,9 @@ def test_two_factor_email_link_is_invalid(
def test_two_factor_email_link_is_already_used( def test_two_factor_email_link_is_already_used(
client, client,
valid_token, valid_token,
mocker mocker,
mock_send_verify_code
): ):
mocker.patch('app.user_api_client.check_verify_code', return_value=(False, 'Code has expired')) mocker.patch('app.user_api_client.check_verify_code', return_value=(False, 'Code has expired'))
@@ -288,14 +290,15 @@ def test_two_factor_email_link_is_already_used(
page = BeautifulSoup(response.data.decode('utf-8'), 'html.parser') page = BeautifulSoup(response.data.decode('utf-8'), 'html.parser')
assert normalize_spaces( assert normalize_spaces(
page.select_one('.banner-dangerous').text page.select_one('.banner-dangerous').text
) == "Theres something wrong with the code" ) == "This link has already been used"
assert response.status_code == 200 assert response.status_code == 200
def test_two_factor_email_link_when_user_is_locked_out( def test_two_factor_email_link_when_user_is_locked_out(
client, client,
valid_token, valid_token,
mocker mocker,
mock_send_verify_code
): ):
mocker.patch('app.user_api_client.check_verify_code', return_value=(False, 'Code not found')) mocker.patch('app.user_api_client.check_verify_code', return_value=(False, 'Code not found'))
@@ -307,7 +310,7 @@ def test_two_factor_email_link_when_user_is_locked_out(
page = BeautifulSoup(response.data.decode('utf-8'), 'html.parser') page = BeautifulSoup(response.data.decode('utf-8'), 'html.parser')
assert normalize_spaces( assert normalize_spaces(
page.select_one('.banner-dangerous').text page.select_one('.banner-dangerous').text
) == "Theres something wrong with the code" ) == "This link has already been used"
assert response.status_code == 200 assert response.status_code == 200