-
-
Notifications
You must be signed in to change notification settings - Fork 3k
/
tox.ini
137 lines (124 loc) · 3.07 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
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
[tox]
envlist =
prj{regular,headless_only}-py{38,39,310,311,312}-django{42}
prj{regular,headless_only}-py{310,311,312}-django{50,51}
prj{regular,headless_only}-py{310,311,312}-djangomain
prj{login_required_mw}-py{312}-django{51}
docs
isort
bandit
black
flake8
mypy
standardjs
compilemessages
[testenv]
setenv =
PYTHONWARNINGS = all
prjregular: DJANGO_SETTINGS_MODULE = tests.regular.settings
prjlogin_required_mw: DJANGO_SETTINGS_MODULE = tests.login_required_mw.settings
prjheadless_only: DJANGO_SETTINGS_MODULE = tests.headless_only.settings
deps =
coverage==7.6.1
Pillow>=9.0
pytest>=7.4
pytest-asyncio == 0.23.8
pytest-django>=4.5.2
django42: Django==4.2.*
django50: Django==5.0.*
django51: Django==5.1.*
djangomain: git+https://github.com/django/django.git@main#egg=django
python3-saml>=1.15.0,<2.0.0
extras =
mfa
openid
socialaccount
steam
commands =
coverage run -m pytest --ds={env:DJANGO_SETTINGS_MODULE} {posargs:allauth}
coverage report
coverage html
allowlist_externals =
/usr/bin/env
make
[testenv:docs]
skip_install = True
deps =
Django
Sphinx
sphinx_rtd_theme
whitelist_externals = make
commands =
make -C {toxinidir}/docs html
[testenv:isort]
skip_install = True
deps =
isort==5.13.2
commands =
isort --check-only --diff {posargs:{toxinidir}}
[testenv:bandit]
skip_install = True
deps =
bandit==1.7.10
commands =
bandit -c {posargs:{toxinidir}}/pyproject.toml -r {posargs:{toxinidir}}/allauth/
[testenv:black]
skip_install = True
deps =
black==24.4.0
commands =
black --check {posargs:{toxinidir}}
[testenv:djlint]
skip_install = True
deps =
djlint==1.34.1
commands =
djlint --configuration {posargs:{toxinidir}/.djlintrc} --check {posargs:{toxinidir}/allauth} {posargs:{toxinidir}/examples}
[testenv:flake8]
skip_install = True
deps =
flake8==6.0.0
commands =
flake8 {posargs:{toxinidir}/allauth}
[testenv:mypy]
deps =
django-stubs==5.0.2
mypy==1.10.0
pytest>=7.4
pytest-asyncio == 0.23.8
pytest-django>=4.5.2
types-requests==2.32.0.20240602
python3-saml>=1.15.0,<2.0.0
commands =
mypy {posargs:{toxinidir}/allauth}
[testenv:compilemessages]
skip_install = True
deps = Django
commands =
/usr/bin/env bash -c "cd allauth; python ../manage.py compilemessages"
setenv =
DJANGO_SETTINGS_MODULE = tests.account_only.settings
[testenv:standardjs]
skip_install = True
commands =
/usr/bin/env bash -c "mkdir -p {toxinidir}/node_modules"
/usr/bin/env npm install standard --no-lockfile --no-progress --non-interactive --silent
/usr/bin/env bash -c "find {toxinidir}/allauth -name '*.js' | xargs {toxinidir}/node_modules/.bin/standard"
[coverage:run]
include = allauth*
[gh-actions:env]
PYTHON_VER =
3.8: py38
3.9: py39
3.10: py310
3.11: py311
3.12: py312
DJANGO =
main: djangomain
4.2: django42
5.0: django50
5.1: django51
PRJ =
regular: prjregular
headless_only: prjheadless_only
login_required_mw: prjlogin_required_mw