black/tox.ini

39 lines
1.2 KiB
INI

[tox]
envlist = {,ci-}py{36,37,38,39},fuzz
[testenv]
setenv = PYTHONPATH = {toxinidir}/src
skip_install = True
# We use `recreate=True` because otherwise, on the second run of `tox -e py`,
# the `no_python2` tests would run with the Python2 extra dependencies installed.
# See https://github.com/psf/black/issues/2367.
recreate = True
deps =
-r{toxinidir}/test_requirements.txt
; parallelization is disabled on CI because pytest-dev/pytest-xdist#620 occurs too frequently
; local runs can stay parallelized since they aren't rolling the dice so many times as like on CI
commands =
pip install -e .[d]
coverage erase
pytest tests --run-optional no_python2 \
!ci: --numprocesses auto \
--cov {posargs}
pip install -e .[d,python2]
pytest tests --run-optional python2 \
!ci: --numprocesses auto \
--cov --cov-append {posargs}
coverage report
[testenv:fuzz]
skip_install = True
deps =
-r{toxinidir}/test_requirements.txt
hypothesmith
lark-parser < 0.10.0
; lark-parser's version is set due to a bug in hypothesis. Once it solved, that would be fixed.
commands =
pip install -e .[d]
coverage erase
coverage run fuzz.py
coverage report