1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91
|
# Tox (https://tox.wiki/) is a tool for running tests
# in multiple virtualenvs. This configuration file will run the
# test suite on all supported python versions. To use it, "pip install tox"
# and then run "tox" from this directory.
[tox]
envlist =
ruff
precommit
safety
mypy
{py39,py312,pypy}-dj42
{py311,py312,py313,pypy}-dj51
{py311,py312,py313,pypy}-dj52
py312-dj42-postgres
py312-dj42-mysql
py313-dj52-postgres
py313-djmaster
[testenv]
commands = make test
allowlist_externals = make
passenv =
DJANGO_EXTENSIONS_DATABASE_ENGINE
DJANGO_EXTENSIONS_DATABASE_NAME
DJANGO_EXTENSIONS_DATABASE_USER
DJANGO_EXTENSIONS_DATABASE_PASSWORD
DJANGO_EXTENSIONS_DATABASE_HOST
DJANGO_EXTENSIONS_DATABASE_PORT
setenv =
postgres: DJANGO_EXTENSIONS_DATABASE_ENGINE = {env:DJANGO_EXTENSIONS_DATABASE_ENGINE:django.db.backends.postgresql}
postgres: DJANGO_EXTENSIONS_DATABASE_NAME = {env:DJANGO_EXTENSIONS_DATABASE_NAME:django_extensions_test}
mysql: DJANGO_EXTENSIONS_DATABASE_ENGINE = {env:DJANGO_EXTENSIONS_DATABASE_ENGINE:django.db.backends.mysql}
mysql: DJANGO_EXTENSIONS_DATABASE_NAME = {env:DJANGO_EXTENSIONS_DATABASE_NAME:django_extensions_test}
deps =
pip >= 21.1
-rrequirements-dev.txt
dj42: Django>=4.2,<5.0
dj51: Django>=5.1,<5.2
dj52: Django>=5.2,<5.3
djmaster: https://github.com/django/django/archive/refs/heads/main.zip
postgres: psycopg[binary,pool]
mysql: mysqlclient
[testenv:ruff]
deps =
pip >= 21.1
ruff
commands =
ruff check
ruff format --diff
[testenv:precommit]
deps =
pip >= 21.1
pre-commit
commands = pre-commit run -a
[testenv:safety]
deps =
pip >= 21.1
safety
# https://github.com/pyupio/safety/issues/539
# Ignore 70612 / CVE-2019-8341
commands = safety --disable-optional-telemetry check --full-report --ignore 70612
[testenv:mypy]
allowlist_externals=
echo
deps =
pip >= 21.1
mypy
django-stubs
types-requests
types-boto
types-PyYAML
types-Werkzeug
-rrequirements-dev.txt
commands = mypy --ignore-missing-imports django_extensions
[testenv:compile-catalog]
allowlist_externals =
make
deps =
pip >= 21.1
setuptools
Babel
commands =
make compile-catalog
|