-
Notifications
You must be signed in to change notification settings - Fork 8
/
Copy pathtox.ini
72 lines (67 loc) · 2.28 KB
/
tox.ini
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
[tox]
envlist = py38-django{32,40}-celery{44,50}-drf{latest}
[testenv]
run_before =
grep -e "^django==" {toxinidir}/requirements/base.txt > {toxinidir}/requirements/django32.txt
grep -e "^djangorestframework==" {toxinidir}/requirements/base.txt > {toxinidir}/requirements/drf.txt
# Let tox control the versions for Django, DRF and celery for testing
cp {toxinidir}/requirements/base.txt {toxinidir}/requirements/tox_temp.txt
sed -i.tmp '/^django==/d;/^vine==/d;/^amqp==/d;/^anyjson==/d' {toxinidir}/requirements/tox_temp.txt
sed -i.tmp '/^djangorestframework==/d;/^billiard==/d' {toxinidir}/requirements/tox_temp.txt
sed -i.tmp '/^celery==/d;/^kombu==/d' {toxinidir}/requirements/tox_temp.txt
rm {toxinidir}/requirements/tox_temp.txt.tmp
deps =
django32: -r{toxinidir}/requirements/django32.txt
django40: Django>=4.0,<4.1
drflatest: -r{toxinidir}/requirements/drf.txt
celery44: -r{toxinidir}/requirements/celery44.txt
celery50: celery>=5.0,<6.0
-r{toxinidir}/requirements/test_layer.txt
-r{toxinidir}/requirements/tox_temp.txt
whitelist_externals =
sed
rm
commands =
python -Wd -m pytest {posargs}
commands_post =
rm -f {toxinidir}/requirements/tox_temp.txt
rm -f {toxinidir}/requirements/django32.txt
rm -f {toxinidir}/requirements/drf.txt
[testenv:docs]
setenv =
DJANGO_SETTINGS_MODULE = test_settings
PYTHONPATH = {toxinidir}
whitelist_externals =
make
rm
deps =
-r{toxinidir}/requirements/doc.txt
commands =
doc8 --ignore-path docs/_build README.rst docs
rm -f docs/super_csv.rst
rm -f docs/modules.rst
make -C docs clean
make -C docs html
python setup.py bdist_wheel
twine check dist/*
[testenv:quality]
whitelist_externals =
make
rm
touch
deps =
-r{toxinidir}/requirements/quality.txt
commands =
touch tests/__init__.py
pylint super_csv manage.py setup.py
rm tests/__init__.py
pycodestyle super_csv manage.py setup.py
isort --check-only --diff tests test_utils super_csv manage.py setup.py test_settings.py
make selfcheck
[testenv:pii_check]
setenv =
DJANGO_SETTINGS_MODULE = test_settings
deps =
-r{toxinidir}/requirements/test.txt
commands =
code_annotations django_find_annotations --config_file .pii_annotations.yml --lint --report --coverage