#!/usr/bin/env bash echo '----- ulimits -----' ulimit -a echo '-------------------' echo set -o errexit set -o pipefail if [ ! "$UNIT2" ]; then UNIT2="$(which unit2)" fi [ "$NOCOVERAGE" ] || coverage erase # First run overwites coverage output. [ "$SKIP_MITOGEN" ] || { if [ ! "$NOCOVERAGE" ]; then coverage run "${UNIT2}" discover \ --start-directory "tests" \ --pattern '*_test.py' \ "$@" else "${UNIT2}" discover \ --start-directory "tests" \ --pattern '*_test.py' \ "$@" fi } # Second run appends. This is since 'discover' treats subdirs as packages and # the 'ansible' subdir shadows the real Ansible package when it contains # __init__.py, so hack around it by just running again with 'ansible' as the # start directory. Alternative seems to be renaming tests/ansible/ and making a # mess of Git history. [ "$SKIP_ANSIBLE" ] || { export PYTHONPATH=`pwd`/tests:$PYTHONPATH if [ ! "$NOCOVERAGE" ]; then coverage run -a "${UNIT2}" discover \ --start-directory "tests/ansible" \ --pattern '*_test.py' \ "$@" else coverage run -a "${UNIT2}" discover \ --start-directory "tests/ansible" \ --pattern '*_test.py' \ "$@" fi } [ "$NOCOVERAGE" ] || coverage html [ "$NOCOVERAGE" ] || echo coverage report is at "file://$(pwd)/htmlcov/index.html"