64 lines
1.4 KiB
INI
64 lines
1.4 KiB
INI
[tox]
|
|
envlist =
|
|
py27,py33,py34,py35,py36,pypy,
|
|
docs,
|
|
{py2,py3}-cover,coverage
|
|
|
|
[testenv]
|
|
# Most of these are defaults but if you specify any you can't fall back
|
|
# to defaults for others.
|
|
basepython =
|
|
py27: python2.7
|
|
py33: python3.3
|
|
py34: python3.4
|
|
py35: python3.5
|
|
py36: python3.6
|
|
pypy: pypy
|
|
py2: python2.7
|
|
py3: python3.5
|
|
|
|
commands =
|
|
pip install colander[testing]
|
|
nosetests --with-xunit --xunit-file=nosetests-{envname}.xml {posargs:}
|
|
|
|
[testenv:docs]
|
|
basepython = python3.5
|
|
whitelist_externals = make
|
|
commands =
|
|
pip install colander[docs]
|
|
make -C docs html epub BUILDDIR={envdir} "SPHINXOPTS=-W -E"
|
|
|
|
# we separate coverage into its own testenv because a) "last run wins" wrt
|
|
# cobertura jenkins reporting and b) pypy and jython can't handle any
|
|
# combination of versions of coverage and nosexcover that i can find.
|
|
|
|
[py-cover]
|
|
commands =
|
|
pip install colander[testing]
|
|
coverage run --source=colander {envbindir}/nosetests
|
|
coverage xml -o {envname}.xml
|
|
|
|
[testenv:py2-cover]
|
|
commands =
|
|
{[py-cover]commands}
|
|
setenv =
|
|
COVERAGE_FILE=.coverage.py2
|
|
|
|
[testenv:py3-cover]
|
|
commands =
|
|
{[py-cover]commands}
|
|
setenv =
|
|
COVERAGE_FILE=.coverage.py3
|
|
|
|
[testenv:coverage]
|
|
basepython = python3.5
|
|
commands =
|
|
coverage erase
|
|
coverage combine
|
|
coverage xml
|
|
coverage report --show-missing --fail-under=100
|
|
deps =
|
|
coverage
|
|
setenv =
|
|
COVERAGE_FILE=.coverage
|