summaryrefslogtreecommitdiff
path: root/tox.ini
diff options
context:
space:
mode:
authorClaudiu Popa <pcmanticore@gmail.com>2016-06-27 20:57:52 +0100
committerClaudiu Popa <pcmanticore@gmail.com>2016-06-27 20:58:47 +0100
commit67f1c8de3e07bd3d969c460a78aa6a0e7675626a (patch)
treea58ba0a5a763c08dc0309d36ba1e784435bed302 /tox.ini
parentebdaae2e1ef7b6447927e0471da86885e89e0f78 (diff)
downloadastroid-git-67f1c8de3e07bd3d969c460a78aa6a0e7675626a.tar.gz
Add coverage configuration, backported from pylint.
Diffstat (limited to 'tox.ini')
-rw-r--r--tox.ini37
1 files changed, 36 insertions, 1 deletions
diff --git a/tox.ini b/tox.ini
index b4370965..3818ece1 100644
--- a/tox.ini
+++ b/tox.ini
@@ -17,4 +17,39 @@ deps =
six
wrapt
pylint: git+https://github.com/pycqa/pylint@master
-commands = python -Wi -m unittest discover -s {envsitepackagesdir}/astroid/tests -p "unittest*.py"
+ coverage
+
+setenv =
+ COVERAGE_FILE = {toxinidir}/.coverage.{envname}
+
+commands =
+ python -Wi {envsitepackagesdir}/coverage run -m unittest discover -s {envsitepackagesdir}/astroid/tests -p "unittest*.py"
+ ; Transform absolute path to relative path
+ ; for compatibility with coveralls.io and fix 'source not available' error.
+ ; If you can find a cleaner way is welcome
+ python -c "import os;cov_strip_abspath = open(os.environ['COVERAGE_FILE'], 'r').read().replace('.tox' + os.sep + os.path.relpath('{envsitepackagesdir}', '{toxworkdir}') + os.sep, '');open(os.environ['COVERAGE_FILE'], 'w').write(cov_strip_abspath)"
+
+[testenv:coveralls]
+setenv =
+ COVERAGE_FILE = {toxinidir}/.coverage
+passenv =
+ *
+deps =
+ coverage
+ coveralls
+skip_install = true
+commands =
+ python {envsitepackagesdir}/coverage combine
+ python {envsitepackagesdir}/coverage report --rcfile={toxinidir}/.coveragerc -m
+ - coveralls --rcfile={toxinidir}/.coveragerc
+changedir = {toxinidir}
+
+[testenv:coverage-erase]
+setenv =
+ COVERAGE_FILE = {toxinidir}/.coverage
+deps =
+ coverage
+skip_install = true
+commands =
+ python {envsitepackagesdir}/coverage erase
+changedir = {toxinidir}