From 4b7436673f7bc8422a793f94c9fed5c2fc671167 Mon Sep 17 00:00:00 2001 From: Dan Radez Date: Tue, 31 May 2016 22:58:00 -0400 Subject: Enabling python coverage tests in build.sh Change-Id: Iececedb03a60dd0bfc1ad6ef1275f6a0427350eb Signed-off-by: Dan Radez --- ci/build.sh | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) (limited to 'ci') diff --git a/ci/build.sh b/ci/build.sh index dd9f9fd1..12e0f9d1 100755 --- a/ci/build.sh +++ b/ci/build.sh @@ -34,6 +34,7 @@ BUILD_BASE=$(readlink -e ../build/) CACHE_DEST="" CACHE_DIR="cache" CACHE_NAME="apex-cache" +PYTHON_TESTS="TRUE" MAKE_TARGETS="images" REQUIRED_PKGS="rpm-build python-docutils" @@ -63,6 +64,11 @@ parse_cmdline() { echo "Buiding opnfv-apex RPMs" shift 1 ;; + --skip-python-tests ) + PYTHON_TESTS="FALSE" + echo "Skipping Python Tests" + shift 1 + ;; --debug ) debug="TRUE" echo "Enable debug output" @@ -145,6 +151,21 @@ if ! rpm -q python34-devel > /dev/null; then fi fi +if [ "$PYTHON_TESTS" == "TRUE" ]; then + # Make sure coverage is installed + if ! python3 -c "import coverage" &> /dev/null; then sudo easy_install-3.4 coverage; fi + + run_make python-tests + pushd ../tests/ > /dev/null + percent=$(coverage3 report --include '*lib/python/*' -m | grep TOTAL | tr -s ' ' | awk '{ print $4 }' | cut -d % -f 1) + if [[ percent -lt 80 ]]; then + echo "Python Coverage: $percent" + echo "Does not meet 80% requirement" + exit 1 + fi + popd +fi + # Execute make against targets for t in $MAKE_TARGETS; do run_make $t -- cgit 1.2.3-korg