cmdlineTests.sh: Skip empty test directories

This commit is contained in:
Kamil Śliwak 2021-09-17 20:54:01 +02:00
parent 970381cb1d
commit 23f7b7781f

View File

@ -56,7 +56,8 @@ do
*) *)
matching_tests=$(find . -mindepth 1 -maxdepth 1 -type d -name "$1" | cut --characters 3- | sort) matching_tests=$(find . -mindepth 1 -maxdepth 1 -type d -name "$1" | cut --characters 3- | sort)
if [[ $matching_tests == "" ]]; then if [[ $matching_tests == "" ]]
then
patterns_with_no_matches+=("$1") patterns_with_no_matches+=("$1")
printWarning "No tests matching pattern '$1' found." printWarning "No tests matching pattern '$1' found."
else else
@ -69,7 +70,8 @@ do
esac esac
done done
if (( ${#selected_tests[@]} == 0 && ${#patterns_with_no_matches[@]} == 0 )); then if (( ${#selected_tests[@]} == 0 && ${#patterns_with_no_matches[@]} == 0 ))
then
selected_tests=(*) selected_tests=(*)
fi fi
popd > /dev/null popd > /dev/null
@ -94,7 +96,8 @@ then
fi fi
# extend stack size in case we run via ASAN # extend stack size in case we run via ASAN
if [[ -n "${CIRCLECI}" ]] || [[ -n "$CI" ]]; then if [[ -n "${CIRCLECI}" ]] || [[ -n "$CI" ]]
then
ulimit -s 16384 ulimit -s 16384
ulimit -a ulimit -a
fi fi
@ -169,7 +172,10 @@ function test_solc_behaviour()
# shellcheck disable=SC2064 # shellcheck disable=SC2064
trap "rm -f $stdout_path $stderr_path" EXIT trap "rm -f $stdout_path $stderr_path" EXIT
if [[ "$exit_code_expected" = "" ]]; then exit_code_expected="0"; fi if [[ "$exit_code_expected" = "" ]]
then
exit_code_expected="0"
fi
[[ $filename == "" ]] || solc_args+=("$filename") [[ $filename == "" ]] || solc_args+=("$filename")
@ -338,19 +344,27 @@ printTask "Running general commandline tests..."
cd "$REPO_ROOT"/test/cmdlineTests/ cd "$REPO_ROOT"/test/cmdlineTests/
for tdir in "${selected_tests[@]}" for tdir in "${selected_tests[@]}"
do do
if ! [[ -d $tdir ]]; then if ! [[ -d $tdir ]]
then
printError "Test directory not found: $tdir" printError "Test directory not found: $tdir"
exit 1 exit 1
fi fi
printTask " - ${tdir}" printTask " - ${tdir}"
if [[ $(ls -A "$tdir") == "" ]]
then
printWarning " ---> skipped (test dir empty)"
continue
fi
# Strip trailing slash from $tdir. # Strip trailing slash from $tdir.
tdir=$(basename "${tdir}") tdir=$(basename "${tdir}")
if [[ $no_smt == true ]] if [[ $no_smt == true ]]
then then
if [[ $tdir =~ .*model_checker_.* ]]; then if [[ $tdir =~ .*model_checker_.* ]]
printWarning " --- > skipped" then
printWarning " ---> skipped (SMT test)"
continue continue
fi fi
fi fi