mirror of
https://github.com/GSA/notifications-api.git
synced 2025-12-17 02:32:32 -05:00
Rename whitelist DAO functions
To reflect the new name of the feature.
This commit is contained in:
@@ -2,16 +2,16 @@ from app import db
|
||||
from app.models import ServiceWhitelist
|
||||
|
||||
|
||||
def dao_fetch_service_whitelist(service_id):
|
||||
def dao_fetch_service_guest_list(service_id):
|
||||
return ServiceWhitelist.query.filter(
|
||||
ServiceWhitelist.service_id == service_id).all()
|
||||
|
||||
|
||||
def dao_add_and_commit_whitelisted_contacts(objs):
|
||||
def dao_add_and_commit_guest_list_contacts(objs):
|
||||
db.session.add_all(objs)
|
||||
db.session.commit()
|
||||
|
||||
|
||||
def dao_remove_service_whitelist(service_id):
|
||||
def dao_remove_service_guest_list(service_id):
|
||||
return ServiceWhitelist.query.filter(
|
||||
ServiceWhitelist.service_id == service_id).delete()
|
||||
|
||||
@@ -75,9 +75,9 @@ from app.dao.services_dao import (
|
||||
get_services_by_partial_name,
|
||||
)
|
||||
from app.dao.service_whitelist_dao import (
|
||||
dao_fetch_service_whitelist,
|
||||
dao_add_and_commit_whitelisted_contacts,
|
||||
dao_remove_service_whitelist
|
||||
dao_fetch_service_guest_list,
|
||||
dao_add_and_commit_guest_list_contacts,
|
||||
dao_remove_service_guest_list
|
||||
)
|
||||
from app.dao.service_email_reply_to_dao import (
|
||||
add_reply_to_email_address_for_service,
|
||||
@@ -569,7 +569,7 @@ def get_guest_list(service_id):
|
||||
if not service:
|
||||
raise InvalidRequest("Service does not exist", status_code=404)
|
||||
|
||||
guest_list = dao_fetch_service_whitelist(service.id)
|
||||
guest_list = dao_fetch_service_guest_list(service.id)
|
||||
return jsonify(
|
||||
email_addresses=[item.recipient for item in guest_list
|
||||
if item.recipient_type == EMAIL_TYPE],
|
||||
@@ -582,7 +582,7 @@ def get_guest_list(service_id):
|
||||
@service_blueprint.route('/<uuid:service_id>/guest-list', methods=['PUT'])
|
||||
def update_guest_list(service_id):
|
||||
# doesn't commit so if there are any errors, we preserve old values in db
|
||||
dao_remove_service_whitelist(service_id)
|
||||
dao_remove_service_guest_list(service_id)
|
||||
try:
|
||||
guest_list_objects = get_whitelist_objects(service_id, request.get_json())
|
||||
except ValueError as e:
|
||||
@@ -591,7 +591,7 @@ def update_guest_list(service_id):
|
||||
msg = '{} is not a valid email address or phone number'.format(str(e))
|
||||
raise InvalidRequest(msg, 400)
|
||||
else:
|
||||
dao_add_and_commit_whitelisted_contacts(guest_list_objects)
|
||||
dao_add_and_commit_guest_list_contacts(guest_list_objects)
|
||||
return '', 204
|
||||
|
||||
|
||||
|
||||
@@ -6,27 +6,27 @@ from app.models import (
|
||||
)
|
||||
|
||||
from app.dao.service_whitelist_dao import (
|
||||
dao_fetch_service_whitelist,
|
||||
dao_add_and_commit_whitelisted_contacts,
|
||||
dao_remove_service_whitelist
|
||||
dao_fetch_service_guest_list,
|
||||
dao_add_and_commit_guest_list_contacts,
|
||||
dao_remove_service_guest_list
|
||||
)
|
||||
from tests.app.db import create_service
|
||||
|
||||
|
||||
def test_fetch_service_whitelist_gets_whitelists(sample_service_whitelist):
|
||||
whitelist = dao_fetch_service_whitelist(sample_service_whitelist.service_id)
|
||||
whitelist = dao_fetch_service_guest_list(sample_service_whitelist.service_id)
|
||||
assert len(whitelist) == 1
|
||||
assert whitelist[0].id == sample_service_whitelist.id
|
||||
|
||||
|
||||
def test_fetch_service_whitelist_ignores_other_service(sample_service_whitelist):
|
||||
assert len(dao_fetch_service_whitelist(uuid.uuid4())) == 0
|
||||
assert len(dao_fetch_service_guest_list(uuid.uuid4())) == 0
|
||||
|
||||
|
||||
def test_add_and_commit_whitelisted_contacts_saves_data(sample_service):
|
||||
whitelist = ServiceWhitelist.from_string(sample_service.id, EMAIL_TYPE, 'foo@example.com')
|
||||
|
||||
dao_add_and_commit_whitelisted_contacts([whitelist])
|
||||
dao_add_and_commit_guest_list_contacts([whitelist])
|
||||
|
||||
db_contents = ServiceWhitelist.query.all()
|
||||
assert len(db_contents) == 1
|
||||
@@ -36,21 +36,21 @@ def test_add_and_commit_whitelisted_contacts_saves_data(sample_service):
|
||||
def test_remove_service_whitelist_only_removes_for_my_service(notify_db, notify_db_session):
|
||||
service_1 = create_service(service_name="service 1")
|
||||
service_2 = create_service(service_name="service 2")
|
||||
dao_add_and_commit_whitelisted_contacts([
|
||||
dao_add_and_commit_guest_list_contacts([
|
||||
ServiceWhitelist.from_string(service_1.id, EMAIL_TYPE, 'service1@example.com'),
|
||||
ServiceWhitelist.from_string(service_2.id, EMAIL_TYPE, 'service2@example.com')
|
||||
])
|
||||
|
||||
dao_remove_service_whitelist(service_1.id)
|
||||
dao_remove_service_guest_list(service_1.id)
|
||||
|
||||
assert service_1.whitelist == []
|
||||
assert len(service_2.whitelist) == 1
|
||||
|
||||
|
||||
def test_remove_service_whitelist_does_not_commit(notify_db, sample_service_whitelist):
|
||||
dao_remove_service_whitelist(sample_service_whitelist.service_id)
|
||||
dao_remove_service_guest_list(sample_service_whitelist.service_id)
|
||||
|
||||
# since dao_remove_service_whitelist doesn't commit, we can still rollback its changes
|
||||
# since dao_remove_service_guest_list doesn't commit, we can still rollback its changes
|
||||
notify_db.session.rollback()
|
||||
|
||||
assert ServiceWhitelist.query.count() == 1
|
||||
|
||||
@@ -7,7 +7,7 @@ from notifications_utils.recipients import InvalidPhoneError
|
||||
|
||||
from app.v2.errors import BadRequestError, TooManyRequestsError
|
||||
from app.config import QueueNames
|
||||
from app.dao.service_whitelist_dao import dao_add_and_commit_whitelisted_contacts
|
||||
from app.dao.service_whitelist_dao import dao_add_and_commit_guest_list_contacts
|
||||
from app.service.send_notification import send_one_off_notification
|
||||
from app.models import (
|
||||
EMAIL_TYPE,
|
||||
@@ -269,7 +269,7 @@ def test_send_one_off_notification_raises_if_cant_send_to_recipient(
|
||||
):
|
||||
service = create_service(restricted=True)
|
||||
template = create_template(service=service)
|
||||
dao_add_and_commit_whitelisted_contacts([
|
||||
dao_add_and_commit_guest_list_contacts([
|
||||
ServiceWhitelist.from_string(service.id, MOBILE_TYPE, '07700900123'),
|
||||
])
|
||||
|
||||
|
||||
@@ -8,7 +8,7 @@ from app.models import (
|
||||
ServiceWhitelist,
|
||||
MOBILE_TYPE, EMAIL_TYPE)
|
||||
|
||||
from app.dao.service_whitelist_dao import dao_add_and_commit_whitelisted_contacts
|
||||
from app.dao.service_whitelist_dao import dao_add_and_commit_guest_list_contacts
|
||||
|
||||
|
||||
@pytest.mark.parametrize('url_path', (
|
||||
@@ -27,7 +27,7 @@ def test_get_whitelist_returns_data(client, sample_service_whitelist, url_path):
|
||||
|
||||
|
||||
def test_get_whitelist_separates_emails_and_phones(client, sample_service):
|
||||
dao_add_and_commit_whitelisted_contacts([
|
||||
dao_add_and_commit_guest_list_contacts([
|
||||
ServiceWhitelist.from_string(sample_service.id, EMAIL_TYPE, 'service@example.com'),
|
||||
ServiceWhitelist.from_string(sample_service.id, MOBILE_TYPE, '07123456789'),
|
||||
ServiceWhitelist.from_string(sample_service.id, MOBILE_TYPE, '+1800-555-555'),
|
||||
|
||||
Reference in New Issue
Block a user