diff options
author | Gábor Bernát <gaborjbernat@gmail.com> | 2018-06-11 10:10:42 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-06-11 10:10:42 +0100 |
commit | 4e7d9091f1f7ffd8042936fe25cd2f66e196f57c (patch) | |
tree | 88d4d446b6fa164e281cce3740ec315b2aa2d8d2 /tox.ini | |
parent | f5707949159ffee516bf2e01a11d438f7ad49434 (diff) | |
download | tox-git-4e7d9091f1f7ffd8042936fe25cd2f66e196f57c.tar.gz |
[#826] switch to source layout (#827)
* move to src layout
* fix coverage
* PR feedback
Diffstat (limited to 'tox.ini')
-rw-r--r-- | tox.ini | 47 |
1 files changed, 32 insertions, 15 deletions
@@ -12,20 +12,25 @@ skip_missing_interpreters = true [testenv] description = run the tests with pytest under {basepython} -setenv = COVERAGE_FILE={toxworkdir}/.coverage.{envname} +setenv = PIP_DISABLE_VERSION_CHECK = 1 + COVERAGE_FILE = {toxworkdir}/.coverage.{envname} passenv = http_proxy https_proxy no_proxy SSL_CERT_FILE TOXENV CI TRAVIS TRAVIS_* APPVEYOR APPVEYOR_* CODECOV_* +deps = extras = testing -commands = pytest {posargs:--cov-config="{toxinidir}/tox.ini" --cov="{envsitepackagesdir}/tox" --timeout=180 tests} +changedir = {toxinidir}/tests +commands = pytest {posargs:--cov="{envsitepackagesdir}/tox" --cov-config="{toxinidir}/tox.ini" --timeout=180 .} [testenv:docs] description = invoke sphinx-build to build the HTML docs and check that all links are valid whitelist_externals = sphinx-build basepython = python3.6 extras = docs +changedir = {toxinidir} commands = sphinx-build -d "{toxworkdir}/docs_doctree" doc "{toxworkdir}/docs_out" --color -W -bhtml [testenv:fix-lint] +description = format the code base to adhere to our styles, and complain about what we cannot do automatically basepython = python3.6 passenv = {[testenv]passenv} HOMEPATH @@ -33,26 +38,35 @@ passenv = {[testenv]passenv} # `error setting certificate verify locations` error PROGRAMDATA extras = lint -description = run static analysis and style check using flake8 +deps = pre-commit == 1.10.1 +skip_install = True +changedir = {toxinidir} commands = pre-commit run --all-files --show-diff-on-failure python -c 'print("hint: run {envdir}/bin/pre-commit install to add checks as pre-commit hook")' [testenv:coverage] -description = combine coverage data and create reports -deps = coverage +description = [run locally after tests]: combine coverage data and create report; + generates a diff coverage against origin/master (can be changed by setting DIFF_AGAINST env var) +deps = {[testenv]deps} + coverage >= 4.4.1, < 5 + diff_cover skip_install = True -changedir = {toxworkdir} -setenv = COVERAGE_FILE=.coverage +passenv = {[testenv]passenv} + DIFF_AGAINST +setenv = COVERAGE_FILE={toxworkdir}/.coverage +changedir = {toxinidir} commands = coverage erase coverage combine - coverage report --rcfile="{toxinidir}/tox.ini" - coverage xml + coverage report -m + coverage xml -o {toxworkdir}/coverage.xml + diff-cover --compare-branch {env:DIFF_AGAINST:origin/master} {toxworkdir}/coverage.xml [testenv:codecov] description = [only run on CI]: upload coverage data to codecov (depends on coverage running first) deps = codecov skip_install = True +changedir = {toxinidir} commands = codecov --file "{toxworkdir}/coverage.xml" [testenv:exit_code] @@ -61,6 +75,7 @@ commands = codecov --file "{toxworkdir}/coverage.xml" basepython = python3.6 description = commands with several exit codes skip_install = True +changedir = {toxinidir} commands = python3.6 -c "import sys; sys.exit(139)" [testenv:pra] @@ -68,6 +83,7 @@ platform = linux passenv = * description = "personal release assistant" - see HOWTORELEASE.rst extras = publish, docs +changedir = {toxinidir} commands = sphinx-build -d "{toxworkdir}/docs_doctree" doc "{toxworkdir}/docs_out" --color -W -blinkcheck "{toxinidir}/tasks/pra.sh" {posargs} @@ -81,6 +97,7 @@ extras = testing, docs # required to make looponfail reload on every source code change usedevelop = True basepython = python3.6 +changedir = {toxinidir} commands = python -m pip list --format=columns python -c 'import sys; print(sys.executable)' @@ -90,7 +107,7 @@ max-line-length = 99 ignore = E203, W503 [coverage:run] -omit = tox/__main__.py +branch = true [coverage:report] skip_covered = True @@ -98,13 +115,13 @@ show_missing = True exclude_lines = if __name__ == ["']__main__["']: [coverage:paths] -source = tox - {toxworkdir}/*/lib/python*/site-packages/tox - {toxworkdir}/*/Lib/site-packages/tox - {toxworkdir}/pypy*/site-packages/tox +source = src/tox + .tox/*/lib/python*/site-packages/tox + .tox/*/Lib/site-packages/tox + .tox/pypy*/site-packages/tox [pytest] -addopts = -rsxX -vvv --showlocals +addopts = -rsxX --showlocals rsyncdirs = tests tox looponfailroots = tox tests norecursedirs = .hg .tox |