From 4b8639faf469eb2cfb699608cc479948cf45366b Mon Sep 17 00:00:00 2001 From: Arona Jones Date: Thu, 28 Jan 2021 18:51:22 +0000 Subject: [PATCH] Import optimisation --- PyRIGS/decorators.py | 2 +- PyRIGS/settings.py | 5 +- PyRIGS/tests/base.py | 16 ++--- PyRIGS/tests/pages.py | 6 +- PyRIGS/tests/regions.py | 18 +++--- PyRIGS/urls.py | 13 ++-- PyRIGS/views.py | 32 ++++------ RIGS/admin.py | 19 +++--- RIGS/apps.py | 2 +- RIGS/finance.py | 14 ++--- RIGS/forms.py | 14 ++--- RIGS/hs.py | 10 ++-- RIGS/ical.py | 13 ++-- .../management/commands/generateSampleData.py | 2 +- .../commands/generateSampleRIGSData.py | 10 ++-- RIGS/models.py | 23 ++++---- RIGS/rigboard.py | 59 +++++++++---------- RIGS/signals.py | 11 ++-- RIGS/templatetags/filters.py | 12 ++-- RIGS/tests/pages.py | 14 ++--- RIGS/tests/regions.py | 6 +- RIGS/tests/test_functional.py | 13 +--- RIGS/tests/test_interaction.py | 24 ++------ RIGS/tests/test_models.py | 15 +++-- RIGS/tests/test_unit.py | 3 +- RIGS/urls.py | 5 +- RIGS/views.py | 22 +------ assets/admin.py | 1 + assets/forms.py | 2 +- .../commands/generateSampleAssetsData.py | 4 +- assets/models.py | 5 +- assets/tests/pages.py | 9 ++- assets/tests/test_interaction.py | 27 +++------ assets/tests/test_unit.py | 13 ++-- assets/urls.py | 8 +-- assets/views.py | 11 ++-- users/forms.py | 6 +- users/regbackend.py | 4 +- users/tests/test_users.py | 25 +------- users/urls.py | 12 ++-- users/views.py | 22 ++----- versioning/tests/test_versioning.py | 10 ++-- versioning/urls.py | 12 ++-- versioning/versioning.py | 7 +-- versioning/views.py | 19 ++---- 45 files changed, 211 insertions(+), 369 deletions(-) diff --git a/PyRIGS/decorators.py b/PyRIGS/decorators.py index a21f6c41..9094d5a0 100644 --- a/PyRIGS/decorators.py +++ b/PyRIGS/decorators.py @@ -1,6 +1,6 @@ from django.contrib.auth import REDIRECT_FIELD_NAME -from django.shortcuts import render from django.http import HttpResponseRedirect +from django.shortcuts import render from django.urls import reverse from RIGS import models diff --git a/PyRIGS/settings.py b/PyRIGS/settings.py index 36b1dc48..6b97091c 100644 --- a/PyRIGS/settings.py +++ b/PyRIGS/settings.py @@ -8,11 +8,12 @@ For the full list of settings and their values, see https://docs.djangoproject.com/en/1.7/ref/settings/ """ +import datetime # Build paths inside the project like this: os.path.join(BASE_DIR, ...) import os -import raven import secrets -import datetime + +import raven from envparse import env BASE_DIR = os.path.dirname(os.path.dirname(__file__)) diff --git a/PyRIGS/tests/base.py b/PyRIGS/tests/base.py index b1f12fec..55f749d1 100644 --- a/PyRIGS/tests/base.py +++ b/PyRIGS/tests/base.py @@ -1,15 +1,15 @@ +import os +import pathlib +import sys +from datetime import datetime + +import pytz +from django.conf import settings from django.test import LiveServerTestCase from selenium import webdriver + from RIGS import models as rigsmodels from . import pages -import os -import pytz -from datetime import date, time, datetime, timedelta -from django.conf import settings -import PyRIGS.settings -import sys -import pathlib -import inspect def create_datetime(year, month, day, hour, min): diff --git a/PyRIGS/tests/pages.py b/PyRIGS/tests/pages.py index 9fa790dc..a50b94cd 100644 --- a/PyRIGS/tests/pages.py +++ b/PyRIGS/tests/pages.py @@ -1,8 +1,8 @@ -from pypom import Page, Region +from pypom import Page +from selenium.common.exceptions import NoSuchElementException from selenium.webdriver.common.action_chains import ActionChains from selenium.webdriver.common.by import By -from selenium.webdriver import Chrome -from selenium.common.exceptions import NoSuchElementException + from PyRIGS.tests import regions diff --git a/PyRIGS/tests/regions.py b/PyRIGS/tests/regions.py index 0da78857..2523bfbf 100644 --- a/PyRIGS/tests/regions.py +++ b/PyRIGS/tests/regions.py @@ -1,15 +1,13 @@ -from pypom import Region -from django.utils import timezone -from django.conf import settings -from selenium.webdriver.common.by import By -from selenium.webdriver.support import expected_conditions -from selenium.webdriver.remote.webelement import WebElement -from selenium.webdriver.support.ui import WebDriverWait -from selenium.webdriver.support.select import Select -from selenium.webdriver.common.keys import Keys -from selenium.common.exceptions import NoSuchElementException import datetime +from django.conf import settings +from pypom import Region +from selenium.common.exceptions import NoSuchElementException +from selenium.webdriver.common.by import By +from selenium.webdriver.common.keys import Keys +from selenium.webdriver.support import expected_conditions +from selenium.webdriver.support.select import Select + def parse_bool_from_string(string): # Used to convert from attribute strings to boolean values, written after I found this: diff --git a/PyRIGS/urls.py b/PyRIGS/urls.py index 4b678b95..104a0552 100644 --- a/PyRIGS/urls.py +++ b/PyRIGS/urls.py @@ -1,16 +1,11 @@ -from django.urls import path, re_path +from django.conf import settings from django.conf.urls import include from django.contrib import admin -from django.contrib.staticfiles.urls import staticfiles_urlpatterns from django.contrib.auth.decorators import login_required -from django.conf import settings -from django.views.decorators.clickjacking import xframe_options_exempt -from django.contrib.auth.views import LoginView +from django.contrib.staticfiles.urls import staticfiles_urlpatterns +from django.urls import path, re_path from django.views.generic import TemplateView -from PyRIGS.decorators import permission_required_with_403 -import RIGS -import users -import versioning + from PyRIGS import views urlpatterns = [ diff --git a/PyRIGS/views.py b/PyRIGS/views.py index ef36d8ee..2ba09f6c 100644 --- a/PyRIGS/views.py +++ b/PyRIGS/views.py @@ -1,27 +1,19 @@ -from django.core.exceptions import PermissionDenied -from django.http.response import HttpResponseRedirect -from django.http import HttpResponse -from django.urls import reverse_lazy, reverse, NoReverseMatch -from django.views import generic -from django.contrib.auth.views import LoginView -from django.db.models import Q -from django.shortcuts import get_object_or_404 -from django.core import serializers -from django.conf import settings -import simplejson -from django.contrib import messages import datetime -import pytz import operator -from registration.views import RegistrationView -from django.views.decorators.csrf import csrf_exempt - -from RIGS import models, forms -from assets import models as asset_models from functools import reduce -from django.views.decorators.cache import never_cache, cache_page -from django.utils.decorators import method_decorator +import simplejson +from django.contrib import messages +from django.core import serializers +from django.core.exceptions import PermissionDenied +from django.db.models import Q +from django.http import HttpResponse +from django.shortcuts import get_object_or_404 +from django.urls import reverse_lazy, reverse, NoReverseMatch +from django.views import generic + +from RIGS import models +from assets import models as asset_models def is_ajax(request): diff --git a/RIGS/admin.py b/RIGS/admin.py index 98fe5d7e..b3d43b71 100644 --- a/RIGS/admin.py +++ b/RIGS/admin.py @@ -1,19 +1,18 @@ from django.contrib import admin -from RIGS import models, forms -from users import forms as user_forms -from django.contrib.auth.admin import UserAdmin -from django.utils.translation import gettext_lazy as _ -from reversion.admin import VersionAdmin - -from django.contrib.admin import helpers -from django.template.response import TemplateResponse from django.contrib import messages -from django.db import transaction +from django.contrib.admin import helpers +from django.contrib.auth.admin import UserAdmin from django.core.exceptions import ObjectDoesNotExist +from django.db import transaction from django.db.models import Count from django.forms import ModelForm - +from django.template.response import TemplateResponse +from django.utils.translation import gettext_lazy as _ from reversion import revisions as reversion +from reversion.admin import VersionAdmin + +from RIGS import models +from users import forms as user_forms # Register your models here. admin.site.register(models.VatRate, VersionAdmin) diff --git a/RIGS/apps.py b/RIGS/apps.py index a0dc3724..01d9bc90 100644 --- a/RIGS/apps.py +++ b/RIGS/apps.py @@ -5,4 +5,4 @@ class RIGSAppConfig(AppConfig): name = 'RIGS' def ready(self): - import RIGS.signals + pass diff --git a/RIGS/finance.py b/RIGS/finance.py index cd6f8db7..81f57c56 100644 --- a/RIGS/finance.py +++ b/RIGS/finance.py @@ -1,25 +1,21 @@ import datetime import re +import reversion +from django import forms from django.contrib import messages -from django.urls import reverse_lazy +from django.db import transaction +from django.db.models import Q from django.http import Http404, HttpResponseRedirect from django.http import HttpResponse from django.shortcuts import get_object_or_404 -from django.template import RequestContext from django.template.loader import get_template +from django.urls import reverse_lazy from django.views import generic -from django.db.models import Q from z3c.rml import rml2pdf -from django.db.models import Q - -from django.db import transaction -import reversion from RIGS import models -from django import forms - forms.DateField.widget = forms.DateInput(attrs={'type': 'date'}) diff --git a/RIGS/forms.py b/RIGS/forms.py index a04df9b4..d453f401 100644 --- a/RIGS/forms.py +++ b/RIGS/forms.py @@ -1,17 +1,11 @@ +from datetime import datetime + +import simplejson from django import forms -from django.utils import formats from django.conf import settings from django.core import serializers -from django.core.mail import EmailMessage, EmailMultiAlternatives -from django.contrib.auth.forms import UserCreationForm, UserChangeForm, AuthenticationForm, PasswordResetForm -from django.db import transaction -from registration.forms import RegistrationFormUniqueEmail -from django.contrib.auth.forms import AuthenticationForm -from captcha.fields import ReCaptchaField -from reversion import revisions as reversion -import simplejson -from datetime import datetime from django.utils import timezone +from reversion import revisions as reversion from RIGS import models diff --git a/RIGS/hs.py b/RIGS/hs.py index 9f04150d..2669feab 100644 --- a/RIGS/hs.py +++ b/RIGS/hs.py @@ -1,11 +1,11 @@ -from RIGS import models, forms -from django.views import generic -from django.utils import timezone +from django.contrib import messages from django.http import HttpResponseRedirect from django.urls import reverse_lazy +from django.utils import timezone +from django.views import generic from reversion import revisions as reversion -from django.db.models import AutoField, ManyToOneRel -from django.contrib import messages + +from RIGS import models, forms class EventRiskAssessmentCreate(generic.CreateView): diff --git a/RIGS/ical.py b/RIGS/ical.py index 09f2dba9..73d18b84 100644 --- a/RIGS/ical.py +++ b/RIGS/ical.py @@ -1,12 +1,11 @@ -from RIGS import models, forms -from django_ical.views import ICalFeed -from django.db.models import Q -from django.urls import reverse_lazy, reverse, NoReverseMatch -from django.utils import timezone -from django.conf import settings - import datetime + import pytz +from django.conf import settings +from django.db.models import Q +from django_ical.views import ICalFeed + +from RIGS import models def item_guid(item): # use the rig-id as the ical unique event identifier diff --git a/RIGS/management/commands/generateSampleData.py b/RIGS/management/commands/generateSampleData.py index e19c569d..dacec218 100644 --- a/RIGS/management/commands/generateSampleData.py +++ b/RIGS/management/commands/generateSampleData.py @@ -1,5 +1,5 @@ -from django.core.management.base import BaseCommand, CommandError from django.core.management import call_command +from django.core.management.base import BaseCommand class Command(BaseCommand): diff --git a/RIGS/management/commands/generateSampleRIGSData.py b/RIGS/management/commands/generateSampleRIGSData.py index f88e4f25..02499668 100644 --- a/RIGS/management/commands/generateSampleRIGSData.py +++ b/RIGS/management/commands/generateSampleRIGSData.py @@ -1,11 +1,11 @@ -from django.core.management.base import BaseCommand, CommandError -from django.contrib.auth.models import Group, Permission -from django.db import transaction -from reversion import revisions as reversion - import datetime import random +from django.contrib.auth.models import Group, Permission +from django.core.management.base import BaseCommand, CommandError +from django.db import transaction +from reversion import revisions as reversion + from RIGS import models diff --git a/RIGS/models.py b/RIGS/models.py index a075d9aa..9894a72c 100644 --- a/RIGS/models.py +++ b/RIGS/models.py @@ -1,25 +1,22 @@ import datetime import hashlib -import pytz +import random +import string +from collections import Counter +from decimal import Decimal +from urllib.parse import urlparse +import pytz from django import forms -from django.db import models -from django.contrib.auth.models import AbstractUser from django.conf import settings +from django.contrib.auth.models import AbstractUser +from django.core.exceptions import ValidationError +from django.db import models +from django.urls import reverse_lazy from django.utils import timezone from django.utils.functional import cached_property from reversion import revisions as reversion from reversion.models import Version -import string - -import random -from collections import Counter -from decimal import Decimal - -from django.core.exceptions import ValidationError -from django.urls import reverse_lazy - -from urllib.parse import urlparse class Profile(AbstractUser): diff --git a/RIGS/rigboard.py b/RIGS/rigboard.py index c3c9594f..44eadd41 100644 --- a/RIGS/rigboard.py +++ b/RIGS/rigboard.py @@ -1,36 +1,33 @@ -from io import BytesIO -import urllib.request -import urllib.error -import urllib.parse - -from django.contrib.staticfiles.storage import staticfiles_storage -from django.core.mail import EmailMessage, EmailMultiAlternatives -from django.views import generic -from django.shortcuts import get_object_or_404 -from django.http import HttpResponseRedirect -from django.template import RequestContext -from django.template.loader import get_template -from django.conf import settings -from django.urls import reverse -from django.urls import reverse_lazy -from django.core import signing -from django.http import HttpResponse -from django.core.exceptions import SuspiciousOperation -from django.db.models import Q -from django.contrib import messages -from django.utils.decorators import method_decorator -from django.views.decorators.csrf import csrf_exempt -from django.utils import timezone -from z3c.rml import rml2pdf -from PyPDF2 import PdfFileMerger, PdfFileReader -import simplejson -import premailer - -from RIGS import models, forms -from PyRIGS import decorators +import copy import datetime import re -import copy +import urllib.error +import urllib.parse +import urllib.request +from io import BytesIO + +import premailer +import simplejson +from PyPDF2 import PdfFileMerger, PdfFileReader +from django.conf import settings +from django.contrib import messages +from django.contrib.staticfiles.storage import staticfiles_storage +from django.core import signing +from django.core.exceptions import SuspiciousOperation +from django.core.mail import EmailMultiAlternatives +from django.db.models import Q +from django.http import HttpResponse +from django.shortcuts import get_object_or_404 +from django.template.loader import get_template +from django.urls import reverse +from django.urls import reverse_lazy +from django.utils import timezone +from django.utils.decorators import method_decorator +from django.views import generic +from z3c.rml import rml2pdf + +from PyRIGS import decorators +from RIGS import models, forms __author__ = 'ghost' diff --git a/RIGS/signals.py b/RIGS/signals.py index b75dc348..4eb95055 100644 --- a/RIGS/signals.py +++ b/RIGS/signals.py @@ -1,25 +1,24 @@ -import datetime import re -import urllib.request import urllib.error import urllib.parse +import urllib.request from io import BytesIO -from django.db.models.signals import post_save from PyPDF2 import PdfFileReader, PdfFileMerger from django.conf import settings from django.contrib.staticfiles.storage import staticfiles_storage -from django.core.mail import EmailMessage, EmailMultiAlternatives from django.core.cache import cache +from django.core.mail import EmailMessage, EmailMultiAlternatives +from django.db.models.signals import post_save from django.template.loader import get_template from django.urls import reverse from django.utils import timezone -from registration.signals import user_activated from premailer import Premailer +from registration.signals import user_activated +from reversion import revisions as reversion from z3c.rml import rml2pdf from RIGS import models -from reversion import revisions as reversion def send_eventauthorisation_success_email(instance): diff --git a/RIGS/templatetags/filters.py b/RIGS/templatetags/filters.py index d923bd53..229d53d7 100644 --- a/RIGS/templatetags/filters.py +++ b/RIGS/templatetags/filters.py @@ -1,15 +1,15 @@ -from django import template from django import forms +from django import template from django.forms.forms import NON_FIELD_ERRORS from django.forms.utils import ErrorDict -from django.utils.text import normalize_newlines from django.template.defaultfilters import stringfilter -from django.utils.safestring import SafeData, mark_safe -from django.utils.html import escape -from RIGS import models -import json from django.template.defaultfilters import yesno, title, truncatewords from django.urls import reverse_lazy +from django.utils.html import escape +from django.utils.safestring import SafeData, mark_safe +from django.utils.text import normalize_newlines + +from RIGS import models register = template.Library() diff --git a/RIGS/tests/pages.py b/RIGS/tests/pages.py index 161d43bb..5c99a022 100644 --- a/RIGS/tests/pages.py +++ b/RIGS/tests/pages.py @@ -1,14 +1,12 @@ -from pypom import Page, Region -from selenium.webdriver.common.by import By -from selenium.webdriver.support import expected_conditions -from selenium.webdriver import Chrome from django.urls import reverse -from PyRIGS.tests import regions -from RIGS.tests import regions as rigs_regions -from PyRIGS.tests.pages import BasePage, FormPage -from selenium.common.exceptions import NoSuchElementException +from pypom import Region +from selenium.webdriver.common.by import By from selenium.webdriver.support import expected_conditions as EC +from PyRIGS.tests import regions +from PyRIGS.tests.pages import BasePage, FormPage +from RIGS.tests import regions as rigs_regions + class Index(BasePage): URL_TEMPLATE = reverse('index') diff --git a/RIGS/tests/regions.py b/RIGS/tests/regions.py index 74fead70..be7d9b7e 100644 --- a/RIGS/tests/regions.py +++ b/RIGS/tests/regions.py @@ -1,10 +1,6 @@ from pypom import Region from selenium.webdriver.common.by import By -from selenium.webdriver.support import expected_conditions -from selenium.webdriver.remote.webelement import WebElement -from selenium.webdriver.support.ui import WebDriverWait -from selenium.webdriver.support.select import Select -import datetime + from PyRIGS.tests.regions import TextBox, Modal diff --git a/RIGS/tests/test_functional.py b/RIGS/tests/test_functional.py index 609e363a..2173732b 100644 --- a/RIGS/tests/test_functional.py +++ b/RIGS/tests/test_functional.py @@ -1,22 +1,13 @@ import datetime -from datetime import date, time, timedelta -from urllib.parse import urlparse +from datetime import date from django.conf import settings from django.core import mail, signing -from django.core.management import call_command -from django.db import transaction from django.http import HttpResponseBadRequest from django.test import TestCase -from django.test.client import Client -from django.test.utils import override_settings from django.urls import reverse -from django.utils import timezone -from reversion import revisions as reversion -from RIGS import models, urls -from RIGS.tests import regions -from . import pages +from RIGS import models class BaseCase(TestCase): diff --git a/RIGS/tests/test_interaction.py b/RIGS/tests/test_interaction.py index b7855a12..0b99a4bb 100644 --- a/RIGS/tests/test_interaction.py +++ b/RIGS/tests/test_interaction.py @@ -1,31 +1,19 @@ import datetime from datetime import date, time, timedelta -from urllib.parse import urlparse -from django.conf import settings -from django.core import mail, signing -from django.core.management import call_command -from django.db import transaction -from django.http import HttpResponseBadRequest from django.test.client import Client -from django.test.utils import override_settings -from django.urls import reverse from django.utils import timezone -from PyRIGS.tests import base -from PyRIGS.tests import regions as base_regions -from PyRIGS.tests.base import (AutoLoginTest, BaseTest, animation_is_finished, - screenshot_failure_cls) -from reversion import revisions as reversion -from RIGS import models, urls -from RIGS.tests import regions -from selenium.common.exceptions import NoSuchElementException from selenium.webdriver.common.action_chains import ActionChains from selenium.webdriver.common.by import By -from selenium.webdriver.common.keys import Keys from selenium.webdriver.support import expected_conditions as EC from selenium.webdriver.support.ui import WebDriverWait -from selenium.webdriver.common.action_chains import ActionChains +from PyRIGS.tests import base +from PyRIGS.tests import regions as base_regions +from PyRIGS.tests.base import (AutoLoginTest, animation_is_finished, + screenshot_failure_cls) +from RIGS import models +from RIGS.tests import regions from . import pages diff --git a/RIGS/tests/test_models.py b/RIGS/tests/test_models.py index 2db6b2d9..a4b9dca3 100644 --- a/RIGS/tests/test_models.py +++ b/RIGS/tests/test_models.py @@ -1,13 +1,12 @@ -import pytz -from reversion import revisions as reversion -from django.conf import settings -from django.core.exceptions import ValidationError -from django.test import TestCase -from RIGS import models -from versioning import versioning from datetime import date, timedelta, datetime, time from decimal import * -from PyRIGS.tests.base import create_browser + +import pytz +from django.conf import settings +from django.test import TestCase +from reversion import revisions as reversion + +from RIGS import models class ProfileTestCase(TestCase): diff --git a/RIGS/tests/test_unit.py b/RIGS/tests/test_unit.py index c0244d11..dbeaa8a4 100644 --- a/RIGS/tests/test_unit.py +++ b/RIGS/tests/test_unit.py @@ -2,13 +2,12 @@ from datetime import date from django.core.exceptions import ObjectDoesNotExist from django.core.management import call_command -from django.urls import reverse from django.test import TestCase from django.test.utils import override_settings +from django.urls import reverse from django.utils import timezone from RIGS import models -from reversion import revisions as reversion class TestAdminMergeObjects(TestCase): diff --git a/RIGS/urls.py b/RIGS/urls.py index ac8ad749..b1a4afc0 100644 --- a/RIGS/urls.py +++ b/RIGS/urls.py @@ -1,11 +1,12 @@ -from django.conf.urls import url +from django.contrib.auth.decorators import login_required from django.contrib.auth.decorators import login_required from django.urls import path, re_path from django.views.decorators.clickjacking import xframe_options_exempt from django.views.generic import RedirectView + from PyRIGS.decorators import (api_key_required, has_oembed, permission_required_with_403) -from RIGS import finance, ical, models, rigboard, views, hs +from RIGS import finance, ical, rigboard, views, hs urlpatterns = [ # People diff --git a/RIGS/views.py b/RIGS/views.py index 6b9d2704..89939060 100644 --- a/RIGS/views.py +++ b/RIGS/views.py @@ -1,25 +1,5 @@ -from django.core.exceptions import PermissionDenied -from django.http.response import HttpResponseRedirect -from django.http import HttpResponse -from django.urls import reverse_lazy, reverse, NoReverseMatch -from django.views import generic -from django.contrib.auth.views import LoginView -from django.db.models import Q -from django.shortcuts import get_object_or_404 -from django.core import serializers -from django.conf import settings -import simplejson -import datetime -import pytz -import operator -from registration.views import RegistrationView -from django.views.decorators.csrf import csrf_exempt - -from RIGS import models, forms -from assets import models as asset_models -from functools import reduce - from PyRIGS.views import GenericListView, GenericDetailView, GenericUpdateView, GenericCreateView, ModalURLMixin +from RIGS import models class PersonList(GenericListView): diff --git a/assets/admin.py b/assets/admin.py index 09864d36..f730aca4 100644 --- a/assets/admin.py +++ b/assets/admin.py @@ -1,5 +1,6 @@ from django.contrib import admin from reversion.admin import VersionAdmin + from assets import models as assets diff --git a/assets/forms.py b/assets/forms.py index 098a90c8..c98b7707 100644 --- a/assets/forms.py +++ b/assets/forms.py @@ -1,7 +1,7 @@ from django import forms +from django.db.models import Q from assets import models -from django.db.models import Q class AssetForm(forms.ModelForm): diff --git a/assets/management/commands/generateSampleAssetsData.py b/assets/management/commands/generateSampleAssetsData.py index a7ddd404..a7a5459e 100644 --- a/assets/management/commands/generateSampleAssetsData.py +++ b/assets/management/commands/generateSampleAssetsData.py @@ -1,9 +1,11 @@ import random + from django.core.management.base import BaseCommand, CommandError from django.utils import timezone from reversion import revisions as reversion -from assets import models + from RIGS import models as rigsmodels +from assets import models class Command(BaseCommand): diff --git a/assets/models.py b/assets/models.py index 3a7b7a63..931dcdc0 100644 --- a/assets/models.py +++ b/assets/models.py @@ -1,11 +1,10 @@ import re + from django.core.exceptions import ValidationError from django.db import models, connection -from django.urls import reverse - from django.db.models.signals import pre_save from django.dispatch.dispatcher import receiver - +from django.urls import reverse from reversion import revisions as reversion from reversion.models import Version diff --git a/assets/tests/pages.py b/assets/tests/pages.py index 529a81cd..d21ed039 100644 --- a/assets/tests/pages.py +++ b/assets/tests/pages.py @@ -1,12 +1,11 @@ # Collection of page object models for use within tests. -from pypom import Page, Region -from selenium.webdriver.common.by import By -from selenium.webdriver.support import expected_conditions -from selenium.webdriver import Chrome from django.urls import reverse +from pypom import Region +from selenium.common.exceptions import NoSuchElementException +from selenium.webdriver.common.by import By + from PyRIGS.tests import regions from PyRIGS.tests.pages import BasePage, FormPage -from selenium.common.exceptions import NoSuchElementException class AssetList(BasePage): diff --git a/assets/tests/test_interaction.py b/assets/tests/test_interaction.py index 4cd1669d..6c181306 100644 --- a/assets/tests/test_interaction.py +++ b/assets/tests/test_interaction.py @@ -1,23 +1,14 @@ -from . import pages -from django.core.management import call_command -from django.test import TestCase -from assets import models -from django.test.utils import override_settings -from django.urls import reverse -from urllib.parse import urlparse -from RIGS import models as rigsmodels -from PyRIGS.tests.base import BaseTest, AutoLoginTest, screenshot_failure_cls -from assets import models, urls -from reversion import revisions as reversion -from selenium.webdriver.support import expected_conditions as EC -from selenium.webdriver.common.by import By -from selenium.webdriver.common.keys import Keys -from selenium.webdriver.support.ui import WebDriverWait -from PyRIGS.tests.base import animation_is_finished import datetime + from django.utils import timezone -from selenium.webdriver.common.action_chains import ActionChains -from django.test import tag +from selenium.webdriver.common.by import By +from selenium.webdriver.support import expected_conditions as EC +from selenium.webdriver.support.ui import WebDriverWait + +from PyRIGS.tests.base import AutoLoginTest, screenshot_failure_cls +from PyRIGS.tests.base import animation_is_finished +from assets import models +from . import pages @screenshot_failure_cls diff --git a/assets/tests/test_unit.py b/assets/tests/test_unit.py index 5e221df9..1e86d1a6 100644 --- a/assets/tests/test_unit.py +++ b/assets/tests/test_unit.py @@ -1,16 +1,13 @@ +import datetime + +import pytest from django.core.management import call_command -from assets import models from django.test.utils import override_settings from django.urls import reverse -from urllib.parse import urlparse -from assets import models, urls -from reversion import revisions as reversion -import datetime -from django.utils import timezone -from django.test import tag -import pytest from pytest_django.asserts import assertFormError, assertRedirects +from assets import models, urls + pytestmark = pytest.mark.django_db # TODO diff --git a/assets/urls.py b/assets/urls.py index 6e44fcd4..25cdc53b 100644 --- a/assets/urls.py +++ b/assets/urls.py @@ -1,11 +1,9 @@ -from django.conf.urls import url -from django.urls import path -from assets import views, models -from versioning import versioning - from django.contrib.auth.decorators import login_required +from django.urls import path from django.views.decorators.clickjacking import xframe_options_exempt + from PyRIGS.decorators import has_oembed, permission_required_with_403 +from assets import views urlpatterns = [ path('', login_required(views.AssetList.as_view()), name='asset_index'), diff --git a/assets/views.py b/assets/views.py index 993148df..5c1db0dd 100644 --- a/assets/views.py +++ b/assets/views.py @@ -1,21 +1,18 @@ -import datetime - import simplejson -from assets import forms, models from django.contrib import messages from django.contrib.auth.mixins import LoginRequiredMixin from django.core import serializers from django.db.models import Q from django.http import Http404, HttpResponse, JsonResponse -from django.shortcuts import get_object_or_404 from django.urls import reverse, reverse_lazy from django.utils import timezone from django.utils.decorators import method_decorator from django.views import generic from django.views.decorators.csrf import csrf_exempt -from versioning import versioning -from PyRIGS.views import GenericListView, GenericDetailView, GenericUpdateView, GenericCreateView, ModalURLMixin, is_ajax -from itertools import chain + +from PyRIGS.views import GenericListView, GenericDetailView, GenericUpdateView, GenericCreateView, ModalURLMixin, \ + is_ajax +from assets import forms, models @method_decorator(csrf_exempt, name='dispatch') diff --git a/users/forms.py b/users/forms.py index a89889cf..06508ac9 100644 --- a/users/forms.py +++ b/users/forms.py @@ -1,13 +1,9 @@ -import simplejson from captcha.fields import ReCaptchaField from django import forms -from django.conf import settings from django.contrib.auth.forms import (AuthenticationForm, PasswordResetForm, UserChangeForm, UserCreationForm) -from django.core import serializers -from django.core.mail import EmailMessage, EmailMultiAlternatives -from django.utils import formats from registration.forms import RegistrationFormUniqueEmail + from RIGS import models diff --git a/users/regbackend.py b/users/regbackend.py index bf0ca3a5..e2f15f14 100644 --- a/users/regbackend.py +++ b/users/regbackend.py @@ -1,7 +1,7 @@ -from RIGS.models import Profile -from users.forms import ProfileRegistrationFormUniqueEmail from registration.signals import user_registered +from users.forms import ProfileRegistrationFormUniqueEmail + def user_created(sender, user, request, **kwargs): form = ProfileRegistrationFormUniqueEmail(request.POST) diff --git a/users/tests/test_users.py b/users/tests/test_users.py index 75c83a48..98948efa 100644 --- a/users/tests/test_users.py +++ b/users/tests/test_users.py @@ -1,31 +1,12 @@ import os import re -from datetime import date, time, datetime, timedelta -import pytz -from django.conf import settings -from django.core import mail, signing -from django.db import transaction -from django.http import HttpResponseBadRequest -from django.test import LiveServerTestCase, TestCase -from django.test.client import Client -from django.urls import reverse -from reversion import revisions as reversion -from selenium import webdriver -from selenium.common.exceptions import StaleElementReferenceException -from selenium.webdriver.support import expected_conditions +from django.core import mail +from django.test import LiveServerTestCase from selenium.webdriver.common.keys import Keys -from selenium.webdriver.support.ui import WebDriverWait -from RIGS import models - -from reversion import revisions as reversion -from django.urls import reverse -from django.core import mail, signing from PyRIGS.tests.base import create_browser -from django.conf import settings - -import sys +from RIGS import models # Functional Tests diff --git a/users/urls.py b/users/urls.py index 3d59c9b6..c723297d 100644 --- a/users/urls.py +++ b/users/urls.py @@ -1,14 +1,12 @@ -from django.urls import path -from django.conf.urls import include, url -from django.contrib import admin -from django.contrib.staticfiles.urls import staticfiles_urlpatterns +from django.conf.urls import include from django.contrib.auth.decorators import login_required -from django.conf import settings -from django.views.decorators.clickjacking import xframe_options_exempt from django.contrib.auth.views import LoginView +from django.urls import path +from django.views.decorators.clickjacking import xframe_options_exempt from registration.backends.default.views import RegistrationView + from PyRIGS.decorators import permission_required_with_403 -from users import regbackend, forms, views +from users import forms, views urlpatterns = [ path('user/register/', RegistrationView.as_view(form_class=forms.ProfileRegistrationFormUniqueEmail), diff --git a/users/views.py b/users/views.py index 724b7ba7..a5a97fb7 100644 --- a/users/views.py +++ b/users/views.py @@ -1,24 +1,10 @@ -from django.core.exceptions import PermissionDenied -from django.http.response import HttpResponseRedirect -from django.http import HttpResponse -from django.urls import reverse_lazy, reverse, NoReverseMatch -from django.views import generic -from django.contrib.auth.views import LoginView -from django.db.models import Q -from django.shortcuts import get_object_or_404 -from django.core import serializers -from django.conf import settings -import simplejson from django.contrib import messages -import datetime -import pytz -import operator -from registration.views import RegistrationView +from django.contrib.auth.views import LoginView +from django.urls import reverse_lazy +from django.views import generic from django.views.decorators.csrf import csrf_exempt -from RIGS import models, forms -from assets import models as asset_models -from functools import reduce +from RIGS import models # This view should be exempt from requiring CSRF token. diff --git a/versioning/tests/test_versioning.py b/versioning/tests/test_versioning.py index 98ac04b2..af7b749b 100644 --- a/versioning/tests/test_versioning.py +++ b/versioning/tests/test_versioning.py @@ -1,14 +1,12 @@ -from reversion import revisions as reversion -from django.conf import settings -from django.core.exceptions import ValidationError +from datetime import date + from django.test import TestCase from django.urls import reverse +from reversion import revisions as reversion + from RIGS import models from assets import models as amodels from versioning import versioning -from datetime import date, timedelta, datetime, time -from decimal import * -from PyRIGS.tests.base import create_browser # Model Tests diff --git a/versioning/urls.py b/versioning/urls.py index 50348560..04d2c77a 100644 --- a/versioning/urls.py +++ b/versioning/urls.py @@ -1,13 +1,9 @@ -from django.conf.urls import url -from django.contrib.auth.decorators import login_required from django.urls import path -from django.views.decorators.clickjacking import xframe_options_exempt -from django.views.generic import RedirectView -from PyRIGS.decorators import (api_key_required, has_oembed, - permission_required_with_403) -from RIGS import finance, ical, models, rigboard, views, hs -from versioning import views from django.apps import apps +from django.urls import path + +from PyRIGS.decorators import (permission_required_with_403) +from versioning import views urlpatterns = [ path('rigboard/activity/feed/', diff --git a/versioning/versioning.py b/versioning/versioning.py index 31b55868..72308919 100644 --- a/versioning/versioning.py +++ b/versioning/versioning.py @@ -1,18 +1,13 @@ -import datetime import logging from diff_match_patch import diff_match_patch from django.contrib.contenttypes.models import ContentType from django.core.exceptions import ObjectDoesNotExist from django.db.models import EmailField, IntegerField, TextField, CharField, BooleanField -from django.shortcuts import get_object_or_404 from django.utils.functional import cached_property -from django.views import generic from reversion.models import Version, VersionQuerySet + from RIGS import models -from assets import models as asset_models -from django.apps import apps -from reversion import revisions as reversion logger = logging.getLogger('tec.pyrigs') diff --git a/versioning/views.py b/versioning/views.py index 2ce16004..9b1b297b 100644 --- a/versioning/views.py +++ b/versioning/views.py @@ -1,23 +1,12 @@ import datetime -import logging -from diff_match_patch import diff_match_patch -from django.contrib.contenttypes.models import ContentType -from django.core.exceptions import ObjectDoesNotExist -from django.db.models import EmailField, IntegerField, TextField -from django.shortcuts import get_object_or_404 -from django.utils.functional import cached_property -from django.views import generic -from reversion.models import Version, VersionQuerySet -from RIGS import models -from assets import models as asset_models from django.apps import apps -from reversion import revisions as reversion -from versioning.versioning import RIGSVersion +from django.shortcuts import get_object_or_404 from django.template.defaultfilters import title +from django.views import generic +from reversion import revisions as reversion -from django.views.decorators.cache import never_cache, cache_page -from django.utils.decorators import method_decorator +from versioning.versioning import RIGSVersion class VersionHistory(generic.ListView):