Esempio n. 1
0
def test_consume_recovery_code_success():
    user_id = '18'
    auth_user = auth.provision_user(user_id)
    recovery_code = auth_user.recovery_codes[0]

    auth.consume_recovery_code(user_id, recovery_code.code)
    assert recovery_code.used is True
Esempio n. 2
0
def test_consume_recovery_code_success():
    user_id = "18"
    auth_user = auth.provision_user(user_id)
    recovery_code = auth_user.recovery_codes[0]

    auth.consume_recovery_code(user_id, recovery_code.code)
    assert recovery_code.used is True
Esempio n. 3
0
def test_consume_recovery_code_already_consumed():
    user_id = '20'
    auth_user = auth.provision_user(user_id)
    recovery_code = auth_user.recovery_codes[0]

    auth.consume_recovery_code(user_id, recovery_code.code)
    with pytest.raises(auth.RecoveryCodeConsumptionError):
        auth.consume_recovery_code(user_id, recovery_code.code)
Esempio n. 4
0
def test_consume_recovery_code_already_consumed():
    user_id = "20"
    auth_user = auth.provision_user(user_id)
    recovery_code = auth_user.recovery_codes[0]

    auth.consume_recovery_code(user_id, recovery_code.code)
    with pytest.raises(auth.RecoveryCodeConsumptionError):
        auth.consume_recovery_code(user_id, recovery_code.code)
Esempio n. 5
0
def test_consume_recovery_code_wrong_user():
    user_id = '19'
    auth_user = auth.provision_user(user_id)
    recovery_code = auth_user.recovery_codes[0]

    with pytest.raises(auth.RecoveryCodeConsumptionError):
        auth.consume_recovery_code(18, recovery_code.code)

    assert recovery_code.used is False
Esempio n. 6
0
def test_consume_recovery_code_wrong_user():
    user_id = "19"
    auth_user = auth.provision_user(user_id)
    recovery_code = auth_user.recovery_codes[0]

    with pytest.raises(auth.RecoveryCodeConsumptionError):
        auth.consume_recovery_code(18, recovery_code.code)

    assert recovery_code.used is False
Esempio n. 7
0
def user_validate_recovery_code():
    data = request.get_json(force=True)
    try:
        validate(data, USER_RECOVERY_CODE_AUTHENTICATE_SCHEMA)
    except ValidationError as e:
        return jsonify(error_message=str(e), error_code='INVALID_PARAMS'), 400

    auth_user = auth.load_user(data['user_id'])
    if not auth_user:
        return user_not_provisioned_response(data['user_id'])

    try:
        auth.consume_recovery_code(auth_user.user_id, data['recovery_code'])
    except auth.RecoveryCodeConsumptionError as e:
        return jsonify(error_message=
                       'The recovery code supplied is not valid for this user',
                       error_code='INVALID_RECOVERY_CODE'), 400

    return jsonify()
Esempio n. 8
0
def user_validate_recovery_code():
    data = request.get_json(force=True)
    try:
        validate(data, USER_RECOVERY_CODE_AUTHENTICATE_SCHEMA)
    except ValidationError as e:
        return jsonify(error_message=str(e), error_code='INVALID_PARAMS'), 400

    auth_user = auth.load_user(data['user_id'])
    if not auth_user:
        return user_not_provisioned_response(data['user_id'])

    try:
        auth.consume_recovery_code(auth_user.user_id, data['recovery_code'])
    except auth.RecoveryCodeConsumptionError as e:
        return jsonify(
            error_message='The recovery code supplied is not valid for this user',
            error_code='INVALID_RECOVERY_CODE'
        ), 400

    return jsonify()
Esempio n. 9
0
def test_consume_recovery_code_wrong_code():
    auth.provision_user(21)
    with pytest.raises(auth.RecoveryCodeConsumptionError):
        auth.consume_recovery_code(21, 'foobar')
Esempio n. 10
0
def test_consume_recovery_code_wrong_code():
    auth.provision_user(21)
    with pytest.raises(auth.RecoveryCodeConsumptionError):
        auth.consume_recovery_code(21, "foobar")