From 2e17f18846ec31fb481843eb104497dd4fd19a0e Mon Sep 17 00:00:00 2001 From: KtorZ Date: Tue, 27 Dec 2022 09:17:48 +0100 Subject: [PATCH] Rework acceptance test runner Show less noise, support parallel execution and make it easier to run a single one. --- examples/acceptance_tests/Makefile | 5 ----- examples/acceptance_tests/run-all.sh | 3 +++ examples/acceptance_tests/run.sh | 24 ++++++++++++++++++++++++ 3 files changed, 27 insertions(+), 5 deletions(-) delete mode 100644 examples/acceptance_tests/Makefile create mode 100755 examples/acceptance_tests/run-all.sh create mode 100755 examples/acceptance_tests/run.sh diff --git a/examples/acceptance_tests/Makefile b/examples/acceptance_tests/Makefile deleted file mode 100644 index 2383f9a2..00000000 --- a/examples/acceptance_tests/Makefile +++ /dev/null @@ -1,5 +0,0 @@ -all: - @for t in $(shell find . -regex ".*[0-9]\{3\}" -type d | sort); do \ - cargo run --quiet -- check $${t}; \ - echo ""; \ - done diff --git a/examples/acceptance_tests/run-all.sh b/examples/acceptance_tests/run-all.sh new file mode 100755 index 00000000..0878185f --- /dev/null +++ b/examples/acceptance_tests/run-all.sh @@ -0,0 +1,3 @@ +#!/usr/bin/env bash + +find . -regex ".*[0-9]\{3\}" -type d | xargs -P 8 -I {} -- ./run.sh {} diff --git a/examples/acceptance_tests/run.sh b/examples/acceptance_tests/run.sh new file mode 100755 index 00000000..c7c6f809 --- /dev/null +++ b/examples/acceptance_tests/run.sh @@ -0,0 +1,24 @@ +#!/usr/bin/env bash + +if [ -z $1 ]; then + echo -e "\033[31mMissing argument: \033[1mACCEPTANCE_TEST\033[0m" + echo "" + echo -e "\033[1mUsage: \033[0m" + echo " run.sh {ACCEPTANCE_TEST}" + echo "" + echo -e "\033[1mExample: \033[0m" + echo " run.sh 034" + exit 1 +fi + +WORKDIR="$(dirname -- "${BASH_SOURCE[0]}")" +TARGET="$WORKDIR/$(basename $1)" + +TMP=$(mktemp) +RESULT=$(cargo run --quiet -- check $TARGET 2>$TMP) +if [ "$?" -eq "0" ]; then + echo "✅ $(basename $TARGET)" +else + echo "❌ $(basename $TARGET)" + cat $TMP +fi