diff options
Diffstat (limited to 'tools')
-rw-r--r-- | tools/coding-checks.sh | 9 | ||||
-rw-r--r-- | tools/cover.sh | 32 | ||||
-rwxr-xr-x | tools/run_tests.sh | 11 |
3 files changed, 33 insertions, 19 deletions
diff --git a/tools/coding-checks.sh b/tools/coding-checks.sh index 4ee909988..615f2c3de 100644 --- a/tools/coding-checks.sh +++ b/tools/coding-checks.sh @@ -28,6 +28,7 @@ process_options () { run_pylint () { local target="${scriptargs:-all}" + local output_format="" if [ "$target" = "all" ]; then files="ansible api tests yardstick" @@ -37,11 +38,15 @@ run_pylint () { *) echo "$target is an unrecognized basecommit"; exit 1;; esac fi - + # make Jenkins output parseable because Jenkins doesn't handle color + # enventually we should use the Jenkins Pylint plugin or other tools + if [ -n "${BRANCH:-}" ] ; then + output_format="--output-format=parseable" + fi echo "Running pylint..." echo "You can speed this up by running it on 'HEAD~[0-9]' (e.g. HEAD~0, this change only)..." if [ -n "${files}" ]; then - pylint --rcfile=.pylintrc ${files} + pylint --rcfile=.pylintrc ${output_format} ${files} else echo "No python changes in this commit, pylint check not required." exit 0 diff --git a/tools/cover.sh b/tools/cover.sh index 780a85a22..c6e928d1a 100644 --- a/tools/cover.sh +++ b/tools/cover.sh @@ -42,17 +42,17 @@ run_coverage_test() { git checkout HEAD^ baseline_report=$(mktemp -t yardstick_coverageXXXXXXX) - ls -l .testrepository - # workaround 'db type could not be determined' bug - # https://bugs.launchpad.net/testrepository/+bug/1229445 - rm -rf .testrepository find . -type f -name "*.pyc" -delete - #python setup.py testr --coverage --testr-args="" - python setup.py testr --coverage --slowest --testr-args="$*" - testr failing - coverage report > ${baseline_report} + # Temporarily run tests from two directories, until all tests have moved + coverage run -p -m unittest discover ./tests/unit + coverage run -p -m unittest discover ./yardstick/tests/unit + coverage combine + + # Temporarily omit yardstick/tests from the report + coverage report --omit=yardstick/tests/*/* > ${baseline_report} + coverage erase # debug awk tail -1 ${baseline_report} @@ -69,17 +69,17 @@ run_coverage_test() { # Generate and save coverage report current_report=$(mktemp -t yardstick_coverageXXXXXXX) - ls -l .testrepository - # workaround 'db type could not be determined' bug - # https://bugs.launchpad.net/testrepository/+bug/1229445 - rm -rf .testrepository find . -type f -name "*.pyc" -delete - #python setup.py testr --coverage --testr-args="" - python setup.py testr --coverage --slowest --testr-args="$*" - testr failing - coverage report > ${current_report} + # Temporarily run tests from two directories, until all tests have moved + coverage run -p -m unittest discover ./tests/unit + coverage run -p -m unittest discover ./yardstick/tests/unit + coverage combine + + # Temporarily omit yardstick/tests from the report + coverage report --omit=yardstick/tests/*/* > ${current_report} + coverage erase rm -rf cover-$PY_VER coverage html -d cover-$PY_VER diff --git a/tools/run_tests.sh b/tools/run_tests.sh index f253327e5..32c4f19e4 100755 --- a/tools/run_tests.sh +++ b/tools/run_tests.sh @@ -29,8 +29,17 @@ run_tests() { echo "Running unittest ... " if [ $FILE_OPTION == "f" ]; then python -m unittest discover -v -s tests/unit > $logfile 2>&1 + if [ $? -ne 0 ]; then + echo "FAILED, results in $logfile" + exit 1 + fi + python -m unittest discover -v -s yardstick/tests/unit >> $logfile 2>&1 else python -m unittest discover -v -s tests/unit + if [ $? -ne 0 ]; then + exit 1 + fi + python -m unittest discover -v -s yardstick/tests/unit fi if [ $? -ne 0 ]; then @@ -53,7 +62,7 @@ run_coverage() { run_functional_test() { mkdir -p .testrepository - python -m subunit.run discover tests/functional > .testrepository/subunit.log + python -m subunit.run discover yardstick/tests/functional > .testrepository/subunit.log subunit2pyunit < .testrepository/subunit.log EXIT_CODE=$? |