From d94d0bc8d746a723c15a1bb7f5085c63e8354f8d Mon Sep 17 00:00:00 2001 From: Leo Hemsted Date: Fri, 5 Mar 2021 20:13:56 +0000 Subject: [PATCH] rename invite blueprints nb: the routes are not changing as part of this, only file paths and blueprint names. invite -> service_invite this blueprint handles fetching invites for a service, creating invites, etc. accept_invite -> global_invite this blueprint handles accepting invites for now, but will also involve retrieving service/org user invite data without knowing the service/org id associated. i'm not in love with this name and open to suggestions, but i wanted to contrast it from service_invite and organisation/invite_rest.py. --- app/__init__.py | 14 ++++++++------ app/commands.py | 2 +- app/{accept_invite => global_invite}/__init__.py | 0 app/{accept_invite => global_invite}/rest.py | 6 +++--- app/{invite => service_invite}/__init__.py | 0 app/{invite => service_invite}/rest.py | 12 ++++++------ .../{accept_invite => global_invite}/__init__.py | 0 .../test_global_invite_rest.py} | 0 tests/app/{invite => service_invite}/__init__.py | 0 .../test_service_invite_rest.py} | 10 +++++----- 10 files changed, 23 insertions(+), 21 deletions(-) rename app/{accept_invite => global_invite}/__init__.py (100%) rename app/{accept_invite => global_invite}/rest.py (90%) rename app/{invite => service_invite}/__init__.py (100%) rename app/{invite => service_invite}/rest.py (90%) rename tests/app/{accept_invite => global_invite}/__init__.py (100%) rename tests/app/{accept_invite/test_accept_invite_rest.py => global_invite/test_global_invite_rest.py} (100%) rename tests/app/{invite => service_invite}/__init__.py (100%) rename tests/app/{invite/test_invite_rest.py => service_invite/test_service_invite_rest.py} (97%) diff --git a/app/__init__.py b/app/__init__.py index 54f92a655..3c94d0581 100644 --- a/app/__init__.py +++ b/app/__init__.py @@ -136,7 +136,6 @@ def create_app(application): def register_blueprint(application): - from app.accept_invite.rest import accept_invite from app.authentication.auth import ( requires_admin_auth, requires_auth, @@ -147,9 +146,9 @@ def register_blueprint(application): from app.complaint.complaint_rest import complaint_blueprint from app.email_branding.rest import email_branding_blueprint from app.events.rest import events as events_blueprint + from app.global_invite.rest import global_invite_blueprint from app.inbound_number.rest import inbound_number_blueprint from app.inbound_sms.rest import inbound_sms as inbound_sms_blueprint - from app.invite.rest import invite as invite_blueprint from app.job.rest import job_blueprint from app.letter_branding.letter_branding_rest import ( letter_branding_blueprint, @@ -174,6 +173,9 @@ def register_blueprint(application): ) from app.service.callback_rest import service_callback_blueprint from app.service.rest import service_blueprint + from app.service_invite.rest import ( + service_invite as service_invite_blueprint, + ) from app.status.healthcheck import status as status_blueprint from app.template.rest import template_blueprint from app.template_folder.rest import template_folder_blueprint @@ -210,8 +212,8 @@ def register_blueprint(application): job_blueprint.before_request(requires_admin_auth) application.register_blueprint(job_blueprint) - invite_blueprint.before_request(requires_admin_auth) - application.register_blueprint(invite_blueprint) + service_invite_blueprint.before_request(requires_admin_auth) + application.register_blueprint(service_invite_blueprint) inbound_number_blueprint.before_request(requires_admin_auth) application.register_blueprint(inbound_number_blueprint) @@ -219,8 +221,8 @@ def register_blueprint(application): inbound_sms_blueprint.before_request(requires_admin_auth) application.register_blueprint(inbound_sms_blueprint) - accept_invite.before_request(requires_admin_auth) - application.register_blueprint(accept_invite, url_prefix='/invite') + global_invite_blueprint.before_request(requires_admin_auth) + application.register_blueprint(global_invite_blueprint, url_prefix='/invite') template_statistics_blueprint.before_request(requires_admin_auth) application.register_blueprint(template_statistics_blueprint) diff --git a/app/commands.py b/app/commands.py index b8e680083..a73f7aed9 100644 --- a/app/commands.py +++ b/app/commands.py @@ -570,7 +570,7 @@ def bulk_invite_user_to_service(file_name, service_id, user_id, auth_type, permi # platform_admin # view_activity # "send_texts,send_emails,send_letters,view_activity" - from app.invite.rest import create_invited_user + from app.service_invite.rest import create_invited_user file = open(file_name) for email_address in file: data = { diff --git a/app/accept_invite/__init__.py b/app/global_invite/__init__.py similarity index 100% rename from app/accept_invite/__init__.py rename to app/global_invite/__init__.py diff --git a/app/accept_invite/rest.py b/app/global_invite/rest.py similarity index 90% rename from app/accept_invite/rest.py rename to app/global_invite/rest.py index 5bb34c3fe..f205f93fc 100644 --- a/app/accept_invite/rest.py +++ b/app/global_invite/rest.py @@ -7,11 +7,11 @@ from app.dao.organisation_dao import dao_get_invited_organisation_user from app.errors import InvalidRequest, register_errors from app.schemas import invited_user_schema -accept_invite = Blueprint('accept_invite', __name__) -register_errors(accept_invite) +global_invite_blueprint = Blueprint('global_invite', __name__) +register_errors(global_invite_blueprint) -@accept_invite.route('//', methods=['GET']) +@global_invite_blueprint.route('//', methods=['GET']) def validate_invitation_token(invitation_type, token): max_age_seconds = 60 * 60 * 24 * current_app.config['INVITATION_EXPIRATION_DAYS'] diff --git a/app/invite/__init__.py b/app/service_invite/__init__.py similarity index 100% rename from app/invite/__init__.py rename to app/service_invite/__init__.py diff --git a/app/invite/rest.py b/app/service_invite/rest.py similarity index 90% rename from app/invite/rest.py rename to app/service_invite/rest.py index a5af73fe0..2bc71cf57 100644 --- a/app/invite/rest.py +++ b/app/service_invite/rest.py @@ -15,12 +15,12 @@ from app.notifications.process_notifications import ( ) from app.schemas import invited_user_schema -invite = Blueprint('invite', __name__, url_prefix='/service//invite') +service_invite = Blueprint('service_invite', __name__, url_prefix='/service//invite') -register_errors(invite) +register_errors(service_invite) -@invite.route('', methods=['POST']) +@service_invite.route('', methods=['POST']) def create_invited_user(service_id): request_json = request.get_json() invited_user, errors = invited_user_schema.load(request_json) @@ -58,19 +58,19 @@ def create_invited_user(service_id): return jsonify(data=invited_user_schema.dump(invited_user).data), 201 -@invite.route('', methods=['GET']) +@service_invite.route('', methods=['GET']) def get_invited_users_by_service(service_id): invited_users = get_invited_users_for_service(service_id) return jsonify(data=invited_user_schema.dump(invited_users, many=True).data), 200 -@invite.route('/', methods=['GET']) +@service_invite.route('/', methods=['GET']) def get_invited_user_by_service(service_id, invited_user_id): invited_user = get_invited_user(service_id, invited_user_id) return jsonify(data=invited_user_schema.dump(invited_user).data), 200 -@invite.route('/', methods=['POST']) +@service_invite.route('/', methods=['POST']) def update_invited_user(service_id, invited_user_id): fetched = get_invited_user(service_id=service_id, invited_user_id=invited_user_id) diff --git a/tests/app/accept_invite/__init__.py b/tests/app/global_invite/__init__.py similarity index 100% rename from tests/app/accept_invite/__init__.py rename to tests/app/global_invite/__init__.py diff --git a/tests/app/accept_invite/test_accept_invite_rest.py b/tests/app/global_invite/test_global_invite_rest.py similarity index 100% rename from tests/app/accept_invite/test_accept_invite_rest.py rename to tests/app/global_invite/test_global_invite_rest.py diff --git a/tests/app/invite/__init__.py b/tests/app/service_invite/__init__.py similarity index 100% rename from tests/app/invite/__init__.py rename to tests/app/service_invite/__init__.py diff --git a/tests/app/invite/test_invite_rest.py b/tests/app/service_invite/test_service_invite_rest.py similarity index 97% rename from tests/app/invite/test_invite_rest.py rename to tests/app/service_invite/test_service_invite_rest.py index 58ff4a41a..4d69f879b 100644 --- a/tests/app/invite/test_invite_rest.py +++ b/tests/app/service_invite/test_service_invite_rest.py @@ -41,7 +41,7 @@ def test_create_invited_user( ) json_resp = admin_request.post( - 'invite.create_invited_user', + 'service_invite.create_invited_user', service_id=sample_service.id, _data=data, _expected_status=201 @@ -102,7 +102,7 @@ def test_invited_user_for_broadcast_service_receives_broadcast_invite_email( ) admin_request.post( - 'invite.create_invited_user', + 'service_invite.create_invited_user', service_id=sample_broadcast_service.id, _data=data, _expected_status=201 @@ -136,7 +136,7 @@ def test_create_invited_user_without_auth_type(admin_request, sample_service, mo } json_resp = admin_request.post( - 'invite.create_invited_user', + 'service_invite.create_invited_user', service_id=sample_service.id, _data=data, _expected_status=201 @@ -218,7 +218,7 @@ def test_get_invited_users_by_service_with_no_invites(client, notify_db, notify_ def test_get_invited_user_by_service(admin_request, sample_invited_user): json_resp = admin_request.get( - 'invite.get_invited_user_by_service', + 'service_invite.get_invited_user_by_service', service_id=sample_invited_user.service.id, invited_user_id=sample_invited_user.id ) @@ -231,7 +231,7 @@ def test_get_invited_user_by_service_when_user_does_not_belong_to_the_service( fake_uuid, ): json_resp = admin_request.get( - 'invite.get_invited_user_by_service', + 'service_invite.get_invited_user_by_service', service_id=fake_uuid, invited_user_id=sample_invited_user.id, _expected_status=404