[tox] envlist = lint, py27,py34,py35,py36,py37,py38,pypy,pypy3, 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 py34: python3.4 py35: python3.5 py36: python3.6 py37: python3.7 py38: python3.8 pypy: pypy pypy3: pypy3 py2: python2.7 py3: python3.5 commands = nosetests --with-xunit --xunit-file=nosetests-{envname}.xml {posargs:} extras = testing deps = -egit+https://github.com/mmerickel/webob.git@accept-offer-object#egg=webob [testenv:py27-scaffolds] basepython = python2.7 commands = python pyramid/scaffolds/tests.py deps = virtualenv [testenv:py34-scaffolds] basepython = python3.4 commands = python pyramid/scaffolds/tests.py deps = virtualenv [testenv:py35-scaffolds] basepython = python3.5 commands = python pyramid/scaffolds/tests.py deps = virtualenv [testenv:py36-scaffolds] basepython = python3.6 commands = python pyramid/scaffolds/tests.py deps = virtualenv [testenv:py37-scaffolds] basepython = python3.7 commands = python pyramid/scaffolds/tests.py deps = virtualenv [testenv:pypy-scaffolds] basepython = pypy commands = python pyramid/scaffolds/tests.py deps = virtualenv [testenv:lint] skip_install = True basepython = python3.5 commands = flake8 pyramid/ python setup.py check -r -s -m check-manifest deps = flake8 readme_renderer check-manifest [testenv:docs] basepython = python3.5 whitelist_externals = make commands = make -C docs doctest html epub BUILDDIR={envdir} "SPHINXOPTS=-W -E" extras = docs [testenv:pdf] basepython = python3.5 whitelist_externals = make commands = make -C docs latexpdf BUILDDIR={envdir} "SPHINXOPTS=-W -E" extras = docs # 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. [testenv:py2-cover] commands = coverage run --source=pyramid {envbindir}/nosetests coverage xml -o coverage-py2.xml setenv = COVERAGE_FILE=.coverage.py2 extras = testing [testenv:py3-cover] commands = coverage run --source=pyramid {envbindir}/nosetests coverage xml -o coverage-py3.xml setenv = COVERAGE_FILE=.coverage.py3 extras = testing [testenv:coverage] skip_install = True basepython = python3.5 commands = coverage erase coverage combine coverage xml coverage report --show-missing --fail-under=100 deps = coverage setenv = COVERAGE_FILE=.coverage