36 lines
1.5 KiB
INI
36 lines
1.5 KiB
INI
[tox]
|
|
envlist =
|
|
py38,py39,py310,py311,py312,pypy39,pypy310
|
|
|
|
[testenv]
|
|
basepython =
|
|
py38: {env:TOXPYTHON:python3.8}
|
|
py39: {env:TOXPYTHON:python3.9}
|
|
py310: {env:TOXPYTHON:python3.10}
|
|
py311: {env:TOXPYTHON:python3.11}
|
|
py312: {env:TOXPYTHON:python3.12}
|
|
pypy39: {env:TOXPYTHON:pypy3.9}
|
|
pypy310: {env:TOXPYTHON:pypy3.10}
|
|
deps =
|
|
; use specific versions of testing tools with which this is known to work
|
|
with_coverage: coverage>=5,<6
|
|
biopython
|
|
setenv =
|
|
PYTHONUNBUFFERED=yes
|
|
allowlist_externals =
|
|
mv
|
|
commands =
|
|
; Notes:
|
|
; * run tests both with and without the C extensions (including Cython)
|
|
; * if running with coverage, merge the coverage run results from both runs
|
|
; * for Python 2.6 use the unit2 script since -m unittest2 doesn't work
|
|
; (but when running with coverage, coverage run -m unittest2 works)
|
|
!with_coverage: {envpython} -m unittest discover tests
|
|
with_coverage: {envbindir}/coverage run --source=fuzzysearch -m unittest discover tests
|
|
with_coverage: mv .coverage .coverage.with_extensions
|
|
{envpython} -c 'import os; [os.remove(os.path.join(d, fn)) for (d, dns, fns) in os.walk(os.path.join(r"{envsitepackagesdir}", "fuzzysearch")) for fn in fns if fn.endswith((".so", ".pyd"))]'
|
|
!with_coverage: {envpython} -m unittest discover tests
|
|
with_coverage: {envbindir}/coverage run --source=fuzzysearch -m unittest discover tests
|
|
with_coverage: mv .coverage .coverage.no_extensions
|
|
with_coverage: {envbindir}/coverage combine
|