[tox] envlist = py{27,36}-cov, htmlcov [testenv] basepython = py27: {env:TOXPYTHON:python2.7} pypy: {env:TOXPYTHON:pypy} py34: {env:TOXPYTHON:python3.4} py35: {env:TOXPYTHON:python3.5} py36: {env:TOXPYTHON:python3.6} deps = cov: coverage>=4.3 pytest -rrequirements.txt install_command = pip install -v {opts} {packages} commands = # run the test suite against the package installed inside tox env. # We use parallel mode and then combine later so that coverage.py will take # paths like .tox/py36/lib/python3.6/site-packages/fontTools and collapse # them into Lib/fontTools. cov: coverage run --parallel-mode -m pytest {posargs} nocov: pytest {posargs} [testenv:htmlcov] basepython = {env:TOXPYTHON:python3.6} deps = coverage>=4.3 skip_install = true commands = coverage combine coverage html [testenv:codecov] passenv = * basepython = {env:TOXPYTHON:python} deps = coverage>=4.3 codecov skip_install = true ignore_outcome = true commands = coverage combine codecov --env TOXENV [testenv:bdist] basepython = {env:TOXPYTHON:python3.6} deps = pygments docutils setuptools wheel skip_install = true install_command = # make sure we use the latest setuptools and wheel pip install --upgrade {opts} {packages} whitelist_externals = rm commands = # check metadata and rst long_description python setup.py check --restructuredtext --strict # clean up build/ and dist/ folders rm -rf {toxinidir}/dist python setup.py clean --all # build sdist python setup.py sdist --dist-dir {toxinidir}/dist # build wheel from sdist pip wheel -v --no-deps --no-index --wheel-dir {toxinidir}/dist --find-links {toxinidir}/dist fonttools