diff --git a/app/__init__.py b/app/__init__.py index b93fb4876..ef8e06a1a 100644 --- a/app/__init__.py +++ b/app/__init__.py @@ -1,49 +1,50 @@ +import itertools import os import urllib from datetime import datetime, timedelta, timezone +from functools import partial from time import monotonic -import itertools import ago -from itsdangerous import BadSignature from flask import ( - session, - render_template, - make_response, current_app, - request, + flash, g, + make_response, + render_template, + request, + session, url_for, - flash ) from flask._compat import string_types from flask.globals import _lookup_req_object, _request_ctx_stack from flask_login import LoginManager, current_user from flask_wtf import CSRFProtect from flask_wtf.csrf import CSRFError -from functools import partial - +from itsdangerous import BadSignature from notifications_python_client.errors import HTTPError -from notifications_utils import logging, request_helper, formatters +from notifications_utils import formatters, logging, request_helper +from notifications_utils.formatters import formatted_list from notifications_utils.recipients import ( - validate_phone_number, InvalidPhoneError, format_phone_number_human_readable, + validate_phone_number, ) -from notifications_utils.formatters import formatted_list from notifications_utils.sanitise_text import SanitiseASCII from notifications_utils.timezones import utc_string_to_aware_gmt_datetime -from werkzeug.exceptions import abort, HTTPException as WerkzeugHTTPException +from werkzeug.exceptions import HTTPException as WerkzeugHTTPException +from werkzeug.exceptions import abort from werkzeug.local import LocalProxy from app import proxy_fix -from app.config import configs from app.asset_fingerprinter import asset_fingerprinter +from app.commands import setup_commands +from app.config import configs from app.extensions import ( antivirus_client, + redis_client, statsd_client, zendesk_client, - redis_client, ) from app.models.service import Service from app.models.user import AnonymousUser @@ -51,29 +52,34 @@ from app.navigation import ( CaseworkNavigation, HeaderNavigation, MainNavigation, - OrgNavigation + OrgNavigation, ) -from app.notify_client.service_api_client import service_api_client from app.notify_client.api_key_api_client import api_key_api_client -from app.notify_client.invite_api_client import invite_api_client -from app.notify_client.job_api_client import job_api_client -from app.notify_client.notification_api_client import notification_api_client -from app.notify_client.status_api_client import status_api_client -from app.notify_client.template_statistics_api_client import template_statistics_client -from app.notify_client.user_api_client import user_api_client -from app.notify_client.events_api_client import events_api_client -from app.notify_client.provider_client import provider_client -from app.notify_client.email_branding_client import email_branding_client -from app.notify_client.letter_branding_client import letter_branding_client -from app.notify_client.organisations_api_client import organisations_client -from app.notify_client.org_invite_api_client import org_invite_api_client -from app.notify_client.letter_jobs_client import letter_jobs_client -from app.notify_client.inbound_number_client import inbound_number_client from app.notify_client.billing_api_client import billing_api_client from app.notify_client.complaint_api_client import complaint_api_client -from app.notify_client.platform_stats_api_client import platform_stats_api_client -from app.notify_client.template_folder_api_client import template_folder_api_client -from app.commands import setup_commands +from app.notify_client.email_branding_client import email_branding_client +from app.notify_client.events_api_client import events_api_client +from app.notify_client.inbound_number_client import inbound_number_client +from app.notify_client.invite_api_client import invite_api_client +from app.notify_client.job_api_client import job_api_client +from app.notify_client.letter_branding_client import letter_branding_client +from app.notify_client.letter_jobs_client import letter_jobs_client +from app.notify_client.notification_api_client import notification_api_client +from app.notify_client.org_invite_api_client import org_invite_api_client +from app.notify_client.organisations_api_client import organisations_client +from app.notify_client.platform_stats_api_client import ( + platform_stats_api_client, +) +from app.notify_client.provider_client import provider_client +from app.notify_client.service_api_client import service_api_client +from app.notify_client.status_api_client import status_api_client +from app.notify_client.template_folder_api_client import ( + template_folder_api_client, +) +from app.notify_client.template_statistics_api_client import ( + template_statistics_client, +) +from app.notify_client.user_api_client import user_api_client from app.utils import get_logo_cdn_domain, id_safe login_manager = LoginManager() diff --git a/app/main/__init__.py b/app/main/__init__.py index 6d431a63a..ef20f66e6 100644 --- a/app/main/__init__.py +++ b/app/main/__init__.py @@ -1,38 +1,38 @@ from flask import Blueprint -main = Blueprint('main', __name__) # noqa +main = Blueprint('main', __name__) -from app.main.views import ( # noqa +from app.main.views import ( # noqa isort:skip + add_service, + agreement, + api_keys, + choose_account, + code_not_received, + conversation, + dashboard, + email_branding, + feedback, + find_users, + forgot_password, + inbound_number, index, + invites, + jobs, + letter_branding, + manage_users, + new_password, + notifications, + organisations, + platform_admin, + providers, + register, + send, + service_settings, sign_in, sign_out, - register, - two_factor, - verify, - send, - add_service, - code_not_received, - jobs, - dashboard, - templates, - service_settings, - forgot_password, - new_password, styleguide, + templates, + two_factor, user_profile, - choose_account, - api_keys, - manage_users, - invites, - feedback, - providers, - find_users, - platform_admin, - email_branding, - letter_branding, - conversation, - organisations, - notifications, - inbound_number, - agreement, + verify, ) diff --git a/app/notify_client/__init__.py b/app/notify_client/__init__.py index ffcf55e23..42c3061df 100644 --- a/app/notify_client/__init__.py +++ b/app/notify_client/__init__.py @@ -1,7 +1,7 @@ +from flask import abort, has_request_context, request from flask_login import current_user -from flask import has_request_context, request, abort -from notifications_python_client.base import BaseAPIClient from notifications_python_client import __version__ +from notifications_python_client.base import BaseAPIClient def _attach_current_user(data): diff --git a/app/status/__init__.py b/app/status/__init__.py index 5bfd07300..5736b1267 100644 --- a/app/status/__init__.py +++ b/app/status/__init__.py @@ -2,4 +2,4 @@ from flask import Blueprint status = Blueprint('status', __name__) -from app.status.views import healthcheck # noqa +from app.status.views import healthcheck # noqa isort:skip diff --git a/requirements.txt b/requirements.txt index 51265544e..e773ded81 100644 --- a/requirements.txt +++ b/requirements.txt @@ -28,10 +28,10 @@ itsdangerous==0.24 # pyup: <1.0.0 git+https://github.com/alphagov/notifications-utils.git@31.2.2#egg=notifications-utils==31.2.2 ## The following requirements were added by pip freeze: -awscli==1.16.129 +awscli==1.16.130 bleach==3.1.0 boto3==1.6.16 -botocore==1.12.119 +botocore==1.12.120 certifi==2019.3.9 chardet==3.0.4 Click==7.0 diff --git a/requirements_for_test.txt b/requirements_for_test.txt index a6f723957..9698f1d59 100644 --- a/requirements_for_test.txt +++ b/requirements_for_test.txt @@ -1,5 +1,5 @@ -r requirements.txt -isort==4.3.4 +isort==4.3.16 pytest==3.10.1 pytest-env==0.6.2 pytest-mock==1.10.1 diff --git a/tests/__init__.py b/tests/__init__.py index 9a6239e0d..b6ede9d99 100644 --- a/tests/__init__.py +++ b/tests/__init__.py @@ -1,11 +1,12 @@ -from unittest.mock import patch -import pytest import uuid - from datetime import datetime, timedelta, timezone -from flask.testing import FlaskClient +from unittest.mock import patch + +import pytest from flask import url_for +from flask.testing import FlaskClient from flask_login import login_user + from app.models.user import InvitedOrgUser