aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexander Yastrebov <yastrebov.alex@gmail.com>2024-01-04 20:36:20 +0100
committerGunnar Morling <gunnar.morling@googlemail.com>2024-01-04 21:16:18 +0100
commit8124a0ca0822834f413e1f7f664b8d5899aadb3e (patch)
treed657d2ed88676280022f87cd495d001443d199ee
parent74a774e47d46dd8bf33c8ed13a0bc73a5a4f7cdb (diff)
test: add script to test all implementations
The script tests all implementations and prints PASS or FAIL status. In case of failure it also prints implementation output to stderr. This will be handy for adding new test samples. Show test statuses and omit failing output: ```sh $ ./test_all.sh 2>/dev/null PASS artsiomkorzun PASS baseline PASS bjhara PASS criccomini FAIL ddimtirov FAIL ebarlas PASS filiphr FAIL itaske PASS khmarbaise FAIL kuduwa-keshavram FAIL lawrey PASS padreati FAIL palmr PASS richardstartin FAIL royvanrijn FAIL seijikun PASS spullara PASS truelive ``` Show only passing implementations: ``` $ ./test_all.sh 2>/dev/null | grep PASS | cut -d' ' -f2 artsiomkorzun baseline bjhara criccomini filiphr khmarbaise padreati richardstartin spullara truelive ``` For #61
-rwxr-xr-x[-rw-r--r--]calculate_average_ddimtirov.sh0
-rwxr-xr-xtest.sh17
-rwxr-xr-xtest_all.sh30
3 files changed, 37 insertions, 10 deletions
diff --git a/calculate_average_ddimtirov.sh b/calculate_average_ddimtirov.sh
index 94a1981..94a1981 100644..100755
--- a/calculate_average_ddimtirov.sh
+++ b/calculate_average_ddimtirov.sh
diff --git a/test.sh b/test.sh
index 16308ba..4bec036 100755
--- a/test.sh
+++ b/test.sh
@@ -15,19 +15,16 @@
# limitations under the License.
#
-if [ -z "$1" ]
- then
- echo "Usage: test.sh <fork name>"
- exit 1
-fi
-
-java --version
+set -euo pipefail
-mvn clean verify
+if [ -z "$1" ]; then
+ echo "Usage: test.sh <fork name>"
+ exit 1
+fi
-for sample in $(ls src/test/resources/samples/*.txt)
-do
+for sample in $(ls src/test/resources/samples/*.txt); do
echo "Validating calculate_average_$1.sh -- $sample"
+
rm -f measurements.txt
ln -s $sample measurements.txt
diff --git a/test_all.sh b/test_all.sh
new file mode 100755
index 0000000..e1141d7
--- /dev/null
+++ b/test_all.sh
@@ -0,0 +1,30 @@
+#!/bin/bash
+#
+# Copyright 2023 The original authors
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+set -euo pipefail
+
+for impl in $(ls calculate_average_*.sh | sort); do
+ noext="${impl%%.sh}"
+ name=${noext##calculate_average_}
+
+ if output=$(./test.sh "$name" 2>&1); then
+ echo "PASS $name"
+ else
+ echo "FAIL $name"
+ echo "$output" 1>&2
+ fi
+done