mirror of
https://github.com/GSA/notifications-api.git
synced 2026-02-01 23:55:58 -05:00
add tests for code used
This commit is contained in:
@@ -15,7 +15,8 @@ from app.models import (
|
|||||||
VerifyCode,
|
VerifyCode,
|
||||||
User,
|
User,
|
||||||
Notification,
|
Notification,
|
||||||
EMAIL_TYPE
|
EMAIL_TYPE,
|
||||||
|
SMS_TYPE
|
||||||
)
|
)
|
||||||
from app import db
|
from app import db
|
||||||
import app.celery.tasks
|
import app.celery.tasks
|
||||||
@@ -409,3 +410,27 @@ def test_user_verify_email_code(admin_request, sample_user):
|
|||||||
assert verify_code.code_used
|
assert verify_code.code_used
|
||||||
assert sample_user.logged_in_at == datetime.utcnow()
|
assert sample_user.logged_in_at == datetime.utcnow()
|
||||||
assert sample_user.current_session_id is not None
|
assert sample_user.current_session_id is not None
|
||||||
|
|
||||||
|
|
||||||
|
@pytest.mark.parametrize('code_type', [EMAIL_TYPE, SMS_TYPE])
|
||||||
|
@freeze_time('2016-01-01T12:00:00')
|
||||||
|
def test_user_verify_email_code_fails_if_code_already_used(admin_request, sample_user, code_type):
|
||||||
|
magic_code = str(uuid.uuid4())
|
||||||
|
verify_code = create_user_code(sample_user, magic_code, code_type)
|
||||||
|
verify_code.code_used = True
|
||||||
|
|
||||||
|
data = {
|
||||||
|
'code_type': code_type,
|
||||||
|
'code': magic_code
|
||||||
|
}
|
||||||
|
|
||||||
|
admin_request.post(
|
||||||
|
'user.verify_user_code',
|
||||||
|
user_id=sample_user.id,
|
||||||
|
_data=data,
|
||||||
|
_expected_status=400
|
||||||
|
)
|
||||||
|
|
||||||
|
assert verify_code.code_used
|
||||||
|
assert sample_user.logged_in_at is None
|
||||||
|
assert sample_user.current_session_id is None
|
||||||
|
|||||||
Reference in New Issue
Block a user