Example #1
0
def test_remove_service_whitelist_does_not_commit(notify_db, sample_service_whitelist):
    dao_remove_service_whitelist(sample_service_whitelist.service_id)

    # since dao_remove_service_whitelist doesn't commit, we can still rollback its changes
    notify_db.session.rollback()

    assert ServiceWhitelist.query.count() == 1
def test_remove_service_whitelist_does_not_commit(notify_db, sample_service_whitelist):
    dao_remove_service_whitelist(sample_service_whitelist.service_id)

    # since dao_remove_service_whitelist doesn't commit, we can still rollback its changes
    notify_db.session.rollback()

    assert ServiceWhitelist.query.count() == 1
Example #3
0
def test_remove_service_whitelist_only_removes_for_my_service(notify_db, notify_db_session):
    service_1 = create_service(notify_db, notify_db_session, service_name="service 1")
    service_2 = create_service(notify_db, notify_db_session, service_name="service 2")
    dao_add_and_commit_whitelisted_contacts([
        ServiceWhitelist.from_string(service_1.id, EMAIL_TYPE, '*****@*****.**'),
        ServiceWhitelist.from_string(service_2.id, EMAIL_TYPE, '*****@*****.**')
    ])

    dao_remove_service_whitelist(service_1.id)

    assert service_1.whitelist == []
    assert len(service_2.whitelist) == 1
def test_remove_service_whitelist_only_removes_for_my_service(notify_db, notify_db_session):
    service_1 = create_service(notify_db, notify_db_session, service_name="service 1")
    service_2 = create_service(notify_db, notify_db_session, service_name="service 2")
    dao_add_and_commit_whitelisted_contacts([
        ServiceWhitelist.from_string(service_1.id, EMAIL_TYPE, '*****@*****.**'),
        ServiceWhitelist.from_string(service_2.id, EMAIL_TYPE, '*****@*****.**')
    ])

    dao_remove_service_whitelist(service_1.id)

    assert service_1.whitelist == []
    assert len(service_2.whitelist) == 1
Example #5
0
def update_whitelist(service_id):
    # doesn't commit so if there are any errors, we preserve old values in db
    dao_remove_service_whitelist(service_id)
    try:
        whitelist_objs = get_whitelist_objects(service_id, request.get_json())
    except ValueError as e:
        current_app.logger.exception(e)
        dao_rollback()
        msg = '{} is not a valid email address or phone number'.format(str(e))
        raise InvalidRequest(msg, 400)
    else:
        dao_add_and_commit_whitelisted_contacts(whitelist_objs)
        return '', 204