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)
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
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
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()
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
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