-
Notifications
You must be signed in to change notification settings - Fork 41
Expand file tree
/
Copy pathtox.ini
More file actions
82 lines (79 loc) · 2.66 KB
/
tox.ini
File metadata and controls
82 lines (79 loc) · 2.66 KB
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
[tox]
envlist=
py{35,36,37,38,39,310,311,312,313,314}-{test,requests,flask,tornado,wsgi,bottle}
py{36,37,38,39,310,311,312,313,314}-asgi
py{36,37,38,39,310,311,312,313}-django3
py{38,39,310,311,312,313}-django4
py{310,311,312,313,314}-django5
py{312,313,314}-django6
py{38,39,310,311,312,313,314}-{asynctest,threadtest}
py{37,38,39,310,311,312,313,314}-exceptiongroup
py{35,313,314}-{lint}
[pytest]
testpaths = tests
addopts = --cov=bugsnag --cov-report html --cov-append --cov-report term
[testenv]
setenv =
PYTHONPATH = {toxinidir}
COVERAGE_FILE=.coverage.{envname}
django3: PYTHONPATH=tests/fixtures/django30{:}{toxinidir}
django4: PYTHONPATH=tests/fixtures/django4{:}{toxinidir}
django5: PYTHONPATH=tests/fixtures/django5{:}{toxinidir}
django6: PYTHONPATH=tests/fixtures/django6{:}{toxinidir}
django{3,4,5,6}: DJANGO_SETTINGS_MODULE=todo.settings
basepython =
py35: python3.5
py36: python3.6
py37: python3.7
py38: python3.8
py39: python3.9
py310: python3.10
py311: python3.11
py312: python3.12
py313: python3.13
py314: python3.14
whitelist_externals=
{toxinidir}/scripts/lint.sh
deps=
.
pytest
pytest-cov
requests: requests
wsgi: webtest
asgi: starlette
asgi: requests
asgi: httpx
bottle: webtest
bottle: bottle
flask: flask
flask: blinker
tornado: tornado
tornado: pytest<8.2
django3: Django>=3.0,<4.0
django4: Django>=4.0,<5.0
django5: Django>=5.0,<6.0
django6: Django>=6.0,<7.0
django{3,4,5,6}: pytest-django
exceptiongroup: exceptiongroup
lint: flake8
lint: mypy
lint: types-pkg_resources; python_version < '3.12'
lint: types-setuptools
lint: types-requests
lint: types-Flask
lint: types-contextvars
commands =
pytest --doctest-modules bugsnag --doctest-ignore-import-errors
test: pytest --ignore=tests/integrations
asynctest: pytest tests/integrations/test_async_asgi.py tests/integrations/test_async_request.py
threadtest: pytest -p no:threadexception tests/integrations/test_thread_excepthook.py
requests: pytest --ignore=tests/integrations tests tests/integrations/test_requests_delivery.py
bottle: pytest tests/integrations/test_bottle.py
wsgi: pytest tests/integrations/test_wsgi.py
asgi: pytest tests/integrations/test_asgi.py
flask: pytest tests/integrations/test_flask.py
django{3,4,5,6}: pytest tests/integrations/test_django.py
tornado: pytest tests/integrations/test_tornado.py
exceptiongroup: pytest tests/test_exception_groups.py
lint: flake8 bugsnag tests example --exclude 'venv*'
lint: mypy --ignore-missing-imports bugsnag