[tox]
envlist = py{311,312}-django{42},quality,translations

[pycodestyle]
exclude = .git,.tox

[pytest]
# Use the workbench settings file.
DJANGO_SETTINGS_MODULE = workbench.settings
addopts = --cov-report term-missing --cov-report xml
filterwarnings =
    ignore::DeprecationWarning
    ignore::FutureWarning

[coverage:run]
omit = drag_and_drop_v2/translations/settings.py

[testenv]
allowlist_externals =
    make
    mkdir
deps =
    django42: Django>=4.2,<4.3
    -r{toxinidir}/requirements/test.txt
commands =
    mkdir -p var
    pytest {posargs:tests/unit/ --cov drag_and_drop_v2}

[testenv:quality]
deps =
    -r{toxinidir}/requirements/quality.txt
commands =
    pycodestyle drag_and_drop_v2 tests manage.py setup.py --max-line-length=120
	pylint drag_and_drop_v2
	pylint tests --rcfile=tests/pylintrc

[testenv:translations]
allowlist_externals =
    make
deps =
    Django>=4.2,<4.3
    -r{toxinidir}/requirements/test.txt
commands =
    make check_translations_up_to_date