Merge pull request #530 from moreati/cover-us

Aggregate code coverage data across all tox runs
pull/564/head
dw 6 years ago committed by GitHub
commit 9a41e17270
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -446,12 +446,16 @@ Core Library
* `#524 <https://github.com/dw/mitogen/issues/524>` : Python 3.6+ emitted a * `#524 <https://github.com/dw/mitogen/issues/524>` : Python 3.6+ emitted a
:class:`DeprecationWarning` for :func:`mitogen.utils.run_with_router`. :class:`DeprecationWarning` for :func:`mitogen.utils.run_with_router`.
* `#529 <https://github.com/dw/mitogen/issues/529>` : Code coverage of the
test suite was not measured across all Python versions.
Thanks! Thanks!
~~~~~~~ ~~~~~~~
Mitogen would not be possible without the support of users. A huge thanks for Mitogen would not be possible without the support of users. A huge thanks for
bug reports, testing, features and fixes in this release contributed by bug reports, testing, features and fixes in this release contributed by
`Alex Willmer <https://github.com/moreati>`_,
`Andreas Krüger <https://github.com/woopstar>`_, `Andreas Krüger <https://github.com/woopstar>`_,
`Anton Stroganov <https://github.com/Aeon>`_, `Anton Stroganov <https://github.com/Aeon>`_,
`Berend De Schouwer <https://github.com/berenddeschouwer>`_, `Berend De Schouwer <https://github.com/berenddeschouwer>`_,

@ -24,16 +24,22 @@ echo
# Don't use errexit, so coverage report is still generated when tests fail # Don't use errexit, so coverage report is still generated when tests fail
set -o pipefail set -o pipefail
NOCOVERAGE="${NOCOVERAGE:-}"
NOCOVERAGE_ERASE="${NOCOVERAGE_ERASE:-$NOCOVERAGE}"
NOCOVERAGE_REPORT="${NOCOVERAGE_REPORT:-$NOCOVERAGE}"
if [ ! "$UNIT2" ]; then if [ ! "$UNIT2" ]; then
UNIT2="$(which unit2)" UNIT2="$(which unit2)"
fi fi
[ "$NOCOVERAGE" ] || coverage erase if [ ! "$NOCOVERAGE_ERASE" ]; then
coverage erase
fi
# First run overwites coverage output. # First run overwites coverage output.
[ "$SKIP_MITOGEN" ] || { [ "$SKIP_MITOGEN" ] || {
if [ ! "$NOCOVERAGE" ]; then if [ ! "$NOCOVERAGE" ]; then
coverage run "${UNIT2}" discover \ coverage run -a "${UNIT2}" discover \
--start-directory "tests" \ --start-directory "tests" \
--pattern '*_test.py' \ --pattern '*_test.py' \
"$@" "$@"
@ -59,7 +65,7 @@ fi
--pattern '*_test.py' \ --pattern '*_test.py' \
"$@" "$@"
else else
coverage run -a "${UNIT2}" discover \ "${UNIT2}" discover \
--start-directory "tests/ansible" \ --start-directory "tests/ansible" \
--pattern '*_test.py' \ --pattern '*_test.py' \
"$@" "$@"
@ -67,8 +73,10 @@ fi
ANSIBLE_TEST_STATUS=$? ANSIBLE_TEST_STATUS=$?
} }
[ "$NOCOVERAGE" ] || coverage html if [ ! "$NOCOVERAGE_REPORT" ]; then
[ "$NOCOVERAGE" ] || echo coverage report is at "file://$(pwd)/htmlcov/index.html" coverage html
echo "coverage report is at file://$(pwd)/htmlcov/index.html"
fi
# Exit with a non-zero status if any test run did so # Exit with a non-zero status if any test run did so
exit "$(max $MITOGEN_TEST_STATUS $ANSIBLE_TEST_STATUS)" exit "$(max $MITOGEN_TEST_STATUS $ANSIBLE_TEST_STATUS)"

@ -1,10 +1,12 @@
[tox] [tox]
envlist = envlist =
init,
py26, py26,
py27, py27,
py35, py35,
py36, py36,
py37, py37,
report,
[testenv] [testenv]
usedevelop = True usedevelop = True
@ -16,6 +18,24 @@ commands =
{posargs:bash run_tests} {posargs:bash run_tests}
whitelist_externals = whitelist_externals =
bash bash
setenv =
NOCOVERAGE_ERASE = 1
NOCOVERAGE_REPORT = 1
[testenv:init]
commands =
coverage erase
deps =
coverage
[testenv:report]
commands =
coverage html
echo "coverage report is at file://{toxinidir}/htmlcov/index.html"
deps =
coverage
whitelist_externals =
echo
[testenv:docs] [testenv:docs]
basepython = python basepython = python

Loading…
Cancel
Save