diff --git a/.coveragerc b/.coveragerc index 013dd20..6b8486c 100644 --- a/.coveragerc +++ b/.coveragerc @@ -1,2 +1,7 @@ +[run] +branch = True +source = src + [report] +precision = 2 show_missing = True diff --git a/.gitignore b/.gitignore index 28fb036..5ac3617 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,7 @@ bin build dist +htmlcov/ lib parts diff --git a/.travis.yml b/.travis.yml index d0320d6..b33aead 100644 --- a/.travis.yml +++ b/.travis.yml @@ -11,10 +11,13 @@ install: - pip install six==1.10.0 # force to avoid conflict with zc.recipe.testrunner - pip install -U setuptools==33.1.1 - pip install zc.buildout + - pip install coveralls coverage - buildout bootstrap - buildout script: - - bin/test -v1 + - coverage run bin/test -v1 +after_success: + - coveralls notifications: email: false cache: diff --git a/tox.ini b/tox.ini index a89855b..5f3cd17 100644 --- a/tox.ini +++ b/tox.ini @@ -9,17 +9,21 @@ envlist = py36, py36-pure, pypy, - pypy3 + pypy3, + coverage-report, [testenv] commands = {envbindir}/buildout -c {toxinidir}/buildout.cfg buildout:directory={envdir} buildout:develop={toxinidir} bootstrap {envbindir}/buildout -c {toxinidir}/buildout.cfg buildout:directory={envdir} buildout:develop={toxinidir} - {envbindir}/test {posargs:-vc1} + coverage run {envbindir}/test {posargs:-vc1} skip_install = true deps = setuptools==33.1.1 zc.buildout + coverage +setenv = + COVERAGE_FILE=.coverage.{envname} [testenv:py27-pure] basepython = @@ -44,3 +48,16 @@ basepython = python3.6 setenv = PURE_PYTHON = 1 + +[testenv:coverage-report] +basepython = python3.6 +deps = coverage +setenv = + COVERAGE_FILE=.coverage +skip_install = true +commands = + coverage erase + coverage combine + coverage html -i + coverage xml -i + coverage report -i --fail-under=97