#!/usr/bin/env bash set -e cd "$(dirname "$0")"/.. # read the options TEMP=`getopt -o f --long force -- "$@"` eval set -- "$TEMP" # extract options. while true ; do case "$1" in -f|--force) FORCEARG="--force"; shift;; --) shift; break;; esac done function run { echo '----' echo "Running $@" if ! "$@"; then printf "\n\e[31;1mFAILED\e[0m $@\n" exit 1 else echo fi } run ./tools/check-provision $FORCEARG run ./tools/clean-repo run ./tools/test-tools run ./tools/lint-all --pep8 $FORCEARG run ./tools/test-migrations run ./tools/test-js-with-node run ./tools/run-mypy run ./tools/test-backend $FORCEARG run ./tools/test-js-with-casper $FORCEARG # Not running management test since it takes 40s and thus is too slow to be worth it. # run ./tools/test-management # Not running queue worker reload tests since it's low-churn code # run ./tools/test-queue-worker-reload # Not running documentation tests since it takes 20s and only tests documentation # run ./tools/test-documentation run ./tools/test-help-documentation.py $FORCEARG run ./tools/test-api printf '\n\e[32mAll OK!\e[0m\n'