summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--Test/runtests.zsh10
-rwxr-xr-xTest/ztst.zsh1
3 files changed, 13 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index 26143945f..c685a51d0 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2007-12-24  Clint Adams  <clint@zsh.org>
+
+	* 24316: Test/runtests.zsh, Test/ztst.zsh: count skipped tests
+	differently from successes and failures.
+
 2007-12-20  Peter Stephenson  <pws@csr.com>
 
 	* unposted: 4.3.4-dev-6.
diff --git a/Test/runtests.zsh b/Test/runtests.zsh
index 1d4321576..562234d91 100644
--- a/Test/runtests.zsh
+++ b/Test/runtests.zsh
@@ -7,10 +7,13 @@ emulate zsh
 # protect from catastrophic failure of an individual test.
 # We could probably do that with subshells instead.
 
-integer success failure
+integer success failure skipped retval
 for file in "${(f)ZTST_testlist}"; do
   $ZTST_exe +Z -f $ZTST_srcdir/ztst.zsh $file
-  if (( $? )); then
+  retval=$?
+  if (( $retval == 2 )); then
+    (( skipped++ ))
+  elif (( $retval )); then
     (( failure++ ))
   else
     (( success++ ))
@@ -18,6 +21,7 @@ for file in "${(f)ZTST_testlist}"; do
 done
 print "**************************************
 $success successful test script${${success:#1}:+s}, \
-$failure failure${${failure:#1}:+s}
+$failure failure${${failure:#1}:+s}, \
+$skipped skipped
 **************************************"
 return $(( failure ? 1 : 0 ))
diff --git a/Test/ztst.zsh b/Test/ztst.zsh
index bd9cd5d1c..4b583a5a8 100755
--- a/Test/ztst.zsh
+++ b/Test/ztst.zsh
@@ -467,6 +467,7 @@ done
 
 if [[ -n "$ZTST_unimplemented" ]]; then
   print "$ZTST_testname: skipped ($ZTST_unimplemented)"
+  ZTST_testfailed=2
 elif (( ! $ZTST_testfailed )); then
   print "$ZTST_testname: all tests successful."
 fi