-
Notifications
You must be signed in to change notification settings - Fork 6
/
Copy pathtox.ini
86 lines (80 loc) · 1.57 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
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
[tox]
# Don't use "min_version", to ensure Tox 3 respects this
minversion = 4
env_list =
lint,
type,
test-django{32,41,42}
[testenv]
# Building and installing wheels is significantly faster
package = wheel
extras =
s3
minio
pytest
[testenv:lint]
package = skip
deps =
flake8
flake8-black
flake8-bugbear
flake8-docstrings
flake8-isort
pep8-naming
commands =
flake8 .
[testenv:format]
package = skip
deps =
black
isort
commands =
isort .
black .
[testenv:type]
# Editable ensures dependencies are installed, but full packaging isn't necessary
package = editable
deps =
{[testenv:test-django42]deps}
boto3-stubs[s3]
django-stubs
djangorestframework-stubs
mypy
types-requests
types-factory-boy
commands =
mypy {posargs}
[testenv:test-django{32,41,42}]
pass_env =
MINIO_STORAGE_ENDPOINT
MINIO_STORAGE_ACCESS_KEY
MINIO_STORAGE_SECRET_KEY
MINIO_STORAGE_MEDIA_BUCKET_NAME
deps =
django32: Django==3.2.*
django41: Django==4.1.*
django42: Django==4.2.*
factory-boy
pytest
pytest-cov
pytest-django
pytest-mock
requests
commands =
pytest {posargs}
[flake8]
max-line-length = 100
show-source = True
ignore =
# closing bracket does not match indentation of opening bracket’s line
E123,
# whitespace before ':'
E203,
# line break before binary operator
W503,
# Missing docstring in *
D10,
extend-exclude =
node_modules,
# Explicitly set this, so "python-client/pyproject.toml" is never used
black-config = pyproject.toml