1# Tox (http://tox.testrun.org/) is a tool for running tests
2# in multiple virtualenvs. This configuration file will run the
3# test suite on all supported python versions. To use it, "pip install tox"
4# and then run "tox" from this directory.
5
6[tox]
7minversion = 3.7.0
8envlist = lint, py36, py37, py38, py39, py310, pypy3, flake8, mypy
9skip_missing_interpreters = true
10isolated_build = true
11
12[testenv]
13depends = lint
14commands = coverage run -m pytest {posargs}
15extras = test
16    trio
17
18[testenv:lint]
19depends =
20deps =
21    isort
22    autopep8
23commands =
24    autopep8 -r -i src tests
25    isort src tests
26skip_install = true
27
28[testenv:flake8]
29basepython = python3.6
30deps = pyproject-flake8
31commands = pflake8 src tests
32skip_install = true
33
34[testenv:mypy]
35deps = mypy >= 0.900
36extras = test
37commands = mypy {posargs} src tests
38skip_install = true
39
40[testenv:docs]
41extras = doc
42commands = sphinx-build docs build/sphinx
43