summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRoss Burton <ross.burton@arm.com>2024-03-21 20:15:56 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2024-03-23 10:16:56 +0000
commita3fffea6b370e22380b0699dcefcda16fdc1f116 (patch)
treed55332ad711974106425258aeb923b1f7d564eab
parent37bd8e8dddce9d0b5bfbcf9244225c3b853d7077 (diff)
downloadopenembedded-core-a3fffea6b370e22380b0699dcefcda16fdc1f116.tar.gz
tcl: improve run-ptest
By setting ERROR_ON_FAILURES we don't need to grep the output to know if the tests failed. By default the log runner will print the failed test case, so we don't need to store the log at all. Set the skipped tests across multiple lines so that it's easier to see what skips are related to what bugs, and to avoid very long lines. Use basename instead of awk to get the test name. Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/recipes-devtools/tcltk/tcl/run-ptest24
1 files changed, 15 insertions, 9 deletions
diff --git a/meta/recipes-devtools/tcltk/tcl/run-ptest b/meta/recipes-devtools/tcltk/tcl/run-ptest
index 87e025fce1..affce9ab81 100644
--- a/meta/recipes-devtools/tcltk/tcl/run-ptest
+++ b/meta/recipes-devtools/tcltk/tcl/run-ptest
@@ -3,19 +3,25 @@
# clock.test needs a timezone to be set
export TZ="Europe/London"
export TCL_LIBRARY=library
+export ERROR_ON_FAILURES=1
# Some tests are overly strict with timings and fail on loaded systems.
-# See bugs #14825 #14882 #15081 #15321.
-SKIPPED_TESTS='async-* cmdMZ-6.6 event-* exit-1.* socket-* socket_inet-*'
+SKIP=""
+# 15321
+SKIP="$SKIP async-\* event-\*"
+# 14882
+SKIP="$SKIP cmdMZ-6.6"
+# 15081
+SKIP="$SKIP exit-1.\*"
+# 14825
+SKIP="$SKIP socket-\* socket_inet-\*"
-for i in `ls tests/*.test | awk -F/ '{print $2}'`; do
- ./tcltest tests/all.tcl -file $i -skip "$SKIPPED_TESTS" >$i.log 2>&1
- grep -q -F -e "Files with failing tests:" -e "Test files exiting with errors:" $i.log
+for i in tests/*.test; do
+ i=$(basename $i)
+ ./tcltest tests/all.tcl -file $i -skip "$SKIP"
if [ $? -eq 0 ]; then
- echo "FAIL: $i"
- cat $i.log
- else
echo "PASS: $i"
+ else
+ echo "FAIL: $i"
fi
- rm -f $i.log
done