diff --git a/Pipfile b/Pipfile index 3906b15..00b11c3 100644 --- a/Pipfile +++ b/Pipfile @@ -4,14 +4,14 @@ verify_ssl = true name = "pypi" [requires] -python_version = "3.10" +python_version = "3.11" [packages] -Django = "*" -model-bakery = "*" -Sphinx = "*" -Pillow = "*" -tox = "*" -coverage = "*" +Django = "~=4.2" +model-bakery = "~=1.4.0" +Sphinx = "~=5.2.3" +Pillow = "~=9.2.0" +tox = "~=4.2.0" +coverage = "~=7.2.0" [dev-packages] diff --git a/Pipfile.lock b/Pipfile.lock index 48fe82d..c07efd1 100644 --- a/Pipfile.lock +++ b/Pipfile.lock @@ -5,7 +5,7 @@ }, "pipfile-spec": 6, "requires": { - "python_version": "3.10" + "python_version": "3.11" }, "sources": [ { diff --git a/easy/tests.py b/easy/tests.py index 88901cf..adf00c8 100644 --- a/easy/tests.py +++ b/easy/tests.py @@ -1,11 +1,18 @@ import uuid import django +import os +import django +from django.conf import settings + +if not settings.configured: + os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'test_settings') + django.setup() from django.contrib.admin import AdminSite from django.contrib.sessions.backends.db import SessionStore from django.http.request import HttpRequest, QueryDict from django import test -from django.utils.datetime_safe import datetime, time +from datetime import datetime, time from django.utils.safestring import SafeData from easy.six import urlencode from model_bakery import baker diff --git a/setup.py b/setup.py index 44fd245..0a99dd5 100644 --- a/setup.py +++ b/setup.py @@ -29,7 +29,6 @@ 'Programming Language :: Python :: 3.6', 'Programming Language :: Python :: 3.7', 'Programming Language :: Python :: 3.8', - 'Programming Language :: Python :: 3.9', 'Programming Language :: Python :: 3.10', 'Programming Language :: Python :: 3.11', ], diff --git a/test_app/urls.py b/test_app/urls.py new file mode 100644 index 0000000..6b669ef --- /dev/null +++ b/test_app/urls.py @@ -0,0 +1,6 @@ +from django.contrib import admin +from django.urls import path + +urlpatterns = [ + path('admin/', admin.site.urls), +] \ No newline at end of file diff --git a/test_settings.py b/test_settings.py new file mode 100644 index 0000000..560cd1a --- /dev/null +++ b/test_settings.py @@ -0,0 +1,47 @@ +DATABASES = { + 'default': { + 'ENGINE': 'django.db.backends.sqlite3', + 'NAME': ':memory:', + } +} + +INSTALLED_APPS = [ + 'django.contrib.admin', + 'django.contrib.auth', + 'django.contrib.contenttypes', + 'django.contrib.sessions', + 'django.contrib.messages', + 'django.contrib.staticfiles', + 'test_app', + 'easy', +] + +SECRET_KEY = 'dummy-key-for-tests' + +MIDDLEWARE = [ + 'django.middleware.security.SecurityMiddleware', + 'django.contrib.sessions.middleware.SessionMiddleware', + 'django.middleware.common.CommonMiddleware', + 'django.middleware.csrf.CsrfViewMiddleware', + 'django.contrib.auth.middleware.AuthenticationMiddleware', + 'django.contrib.messages.middleware.MessageMiddleware', + 'django.middleware.clickjacking.XFrameOptionsMiddleware', +] + +ROOT_URLCONF = 'test_app.urls' + +TEMPLATES = [ + { + 'BACKEND': 'django.template.backends.django.DjangoTemplates', + 'DIRS': [], + 'APP_DIRS': True, + 'OPTIONS': { + 'context_processors': [ + 'django.template.context_processors.debug', + 'django.template.context_processors.request', + 'django.contrib.auth.context_processors.auth', + 'django.contrib.messages.context_processors.messages', + ], + }, + }, +] \ No newline at end of file