zulip/tools/test-all

51 lines
1.2 KiB
Bash
Executable File

#!/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
printf '\n\e[32mAll OK!\e[0m\n'