Move inline import to top of file

Usually we have imports at the top. It looks like the reason for
them being inline was to avoid a circular import, but we can also
avoid this by not importing everything from the app module.

Since we're about to add more imports from event_handlers, now is
a good time to refactor them. Note this matches how we import the
event handlers in every other module.
This commit is contained in:
Ben Thorner
2021-07-15 11:18:36 +01:00
parent d414e6d345
commit 0f87ffe093
4 changed files with 6 additions and 7 deletions

View File

@@ -1,6 +1,6 @@
from flask import request
from app import events_api_client
from app.notify_client.events_api_client import events_api_client
EVENT_SCHEMAS = {
"sucessful_login": {"user_id"},

View File

@@ -4,6 +4,7 @@ from notifications_python_client.errors import HTTPError
from notifications_utils.timezones import utc_string_to_aware_gmt_datetime
from werkzeug.utils import cached_property
from app.event_handlers import create_add_user_to_service_event
from app.models import JSONModel, ModelList
from app.models.organisation import Organisation
from app.models.roles_and_permissions import (
@@ -401,8 +402,6 @@ class User(JSONModel, UserMixin):
session['current_session_id'] = self.current_session_id
def add_to_service(self, service_id, permissions, folder_permissions, invited_by_id):
from app.event_handlers import create_add_user_to_service_event
try:
user_api_client.add_user_to_service(
service_id,

View File

@@ -46,7 +46,7 @@ def test_existing_user_accept_invite_calls_api_and_redirects_to_dashboard(
):
expected_service = service_one['id']
expected_permissions = {'view_activity', 'send_messages', 'manage_service', 'manage_api_keys'}
mock_audit_event = mocker.patch('app.event_handlers.create_add_user_to_service_event')
mock_audit_event = mocker.patch('app.models.user.create_add_user_to_service_event')
response = client.get(url_for('main.accept_invite', token='thisisnotarealtoken'))
@@ -270,7 +270,7 @@ def test_accept_invite_redirects_if_api_raises_an_error_that_they_are_already_pa
mock_no_users_for_service,
mock_get_user,
):
mock_audit_event = mocker.patch('app.event_handlers.create_add_user_to_service_event')
mock_audit_event = mocker.patch('app.models.user.create_add_user_to_service_event')
mocker.patch('app.user_api_client.add_user_to_service', side_effect=HTTPError(
response=Mock(
@@ -574,7 +574,7 @@ def test_new_invited_user_verifies_and_added_to_service(
mock_create_event,
mocker,
):
mock_audit_event = mocker.patch('app.event_handlers.create_add_user_to_service_event')
mock_audit_event = mocker.patch('app.models.user.create_add_user_to_service_event')
# visit accept token page
response = client.get(url_for('main.accept_invite', token='thisisnotarealtoken'))

View File

@@ -334,7 +334,7 @@ def test_register_from_email_auth_invite(
fake_uuid,
mocker,
):
mock_audit_event = mocker.patch('app.event_handlers.create_add_user_to_service_event')
mock_audit_event = mocker.patch('app.models.user.create_add_user_to_service_event')
sample_invite['auth_type'] = 'email_auth'
sample_invite['email_address'] = invite_email_address