Example #1
0
def test_add_reply_to_email_address_ensure_there_is_not_more_than_one_default(sample_service):
    create_reply_to_email(service=sample_service, email_address='*****@*****.**', is_default=True)
    create_reply_to_email(service=sample_service, email_address='*****@*****.**', is_default=True)
    with pytest.raises(Exception):
        add_reply_to_email_address_for_service(service_id=sample_service.id,
                                               email_address='*****@*****.**',
                                               is_default=False)
def test_add_reply_to_email_address_ensures_first_reply_to_is_default(
        sample_service):
    with pytest.raises(expected_exception=InvalidRequest):
        add_reply_to_email_address_for_service(
            service_id=sample_service.id,
            email_address="*****@*****.**",
            is_default=False)
Example #3
0
def test_add_reply_to_email_address_for_service_creates_first_email_for_service(notify_db_session):
    service = create_service()
    add_reply_to_email_address_for_service(service_id=service.id,
                                           email_address='*****@*****.**',
                                           is_default=True)

    results = dao_get_reply_to_by_service_id(service_id=service.id)
    assert len(results) == 1
    assert results[0].email_address == '*****@*****.**'
    assert results[0].is_default
Example #4
0
def test_add_reply_to_email_address_new_reply_to_is_default_existing_reply_to_is_not(notify_db_session):
    service = create_service()
    create_reply_to_email(service=service, email_address="*****@*****.**", is_default=True)
    add_reply_to_email_address_for_service(service_id=service.id, email_address='*****@*****.**', is_default=True)

    results = dao_get_reply_to_by_service_id(service_id=service.id)
    assert len(results) == 2
    for x in results:
        if x.email_address == '*****@*****.**':
            assert not x.is_default
        elif x.email_address == '*****@*****.**':
            assert x.is_default
        else:
            assert False
Example #5
0
def test_add_reply_to_email_address_for_service_creates_another_email_for_service(notify_db_session):
    service = create_service()
    create_reply_to_email(service=service, email_address="*****@*****.**")

    add_reply_to_email_address_for_service(service_id=service.id, email_address='*****@*****.**', is_default=False)

    results = dao_get_reply_to_by_service_id(service_id=service.id)
    assert len(results) == 2
    for x in results:
        if x.email_address == '*****@*****.**':
            assert x.is_default
        elif x.email_address == '*****@*****.**':
            assert not x.is_default
        else:
            raise AssertionError()
Example #6
0
def add_service_reply_to_email_address(service_id):
    # validate the service exists, throws ResultNotFound exception.
    dao_fetch_service_by_id(service_id)
    form = validate(request.get_json(), add_service_email_reply_to_request)
    new_reply_to = add_reply_to_email_address_for_service(service_id=service_id,
                                                          email_address=form['email_address'],
                                                          is_default=form.get('is_default', True))
    return jsonify(data=new_reply_to.serialize()), 201
Example #7
0
def add_service_reply_to_email_address(service_id):
    # validate the service exists, throws ResultNotFound exception.
    dao_fetch_service_by_id(service_id)
    form = validate(request.get_json(), add_service_email_reply_to_request)
    check_if_reply_to_address_already_in_use(service_id, form["email_address"])
    new_reply_to = add_reply_to_email_address_for_service(
        service_id=service_id,
        email_address=form["email_address"],
        is_default=form.get("is_default", True),
    )
    return jsonify(data=new_reply_to.serialize()), 201
def test_add_reply_to_email_address_can_add_a_third_reply_to_address(sample_service):
    add_reply_to_email_address_for_service(service_id=sample_service.id, email_address="*****@*****.**", is_default=True)
    add_reply_to_email_address_for_service(
        service_id=sample_service.id,
        email_address="*****@*****.**",
        is_default=False,
    )
    add_reply_to_email_address_for_service(
        service_id=sample_service.id,
        email_address="*****@*****.**",
        is_default=False,
    )

    results = dao_get_reply_to_by_service_id(service_id=sample_service.id)
    assert len(results) == 3

    for x in results:
        if x.email_address == "*****@*****.**":
            assert x.is_default
        elif x.email_address == "*****@*****.**":
            assert not x.is_default
        elif x.email_address == "*****@*****.**":
            assert not x.is_default
        else:
            assert False