about summary refs log tree commit diff
path: root/Test/ztst.zsh
diff options
context:
space:
mode:
authorPeter Stephenson <p.stephenson@samsung.com>2018-04-25 18:15:21 +0100
committerPeter Stephenson <p.stephenson@samsung.com>2018-04-25 18:16:02 +0100
commitbdd595321fc3e95e8e60319d130b287bedc33d26 (patch)
tree0776efe3d57d95fedee6a6b2c0eacee0c5136d36 /Test/ztst.zsh
parent76b5b3a504f5a2d9062a82dec279c3d88d57e8ee (diff)
downloadzsh-bdd595321fc3e95e8e60319d130b287bedc33d26.tar.gz
zsh-bdd595321fc3e95e8e60319d130b287bedc33d26.tar.xz
zsh-bdd595321fc3e95e8e60319d130b287bedc33d26.zip
42722: Replace ed with dc in fg/bg tests.
This should be even simpler.

Also more fix ups for failed pattern diffs.
Diffstat (limited to 'Test/ztst.zsh')
-rwxr-xr-xTest/ztst.zsh15
1 files changed, 7 insertions, 8 deletions
diff --git a/Test/ztst.zsh b/Test/ztst.zsh
index 1a6a0b543..d835e0edb 100755
--- a/Test/ztst.zsh
+++ b/Test/ztst.zsh
@@ -315,26 +315,25 @@ ZTST_diff() {
       
   if (( diff_pat )); then
     local -a diff_lines1 diff_lines2
-    integer failed i l n
+    integer failed i l
     local p
 
-    diff_lines1=("${(f)$(<$argv[-2])}")
-    diff_lines2=("${(f)$(<$argv[-1])}")
+    diff_lines1=("${(f@)$(<$argv[-2])}")
+    diff_lines2=("${(f@)$(<$argv[-1])}")
     if (( ${#diff_lines1} != ${#diff_lines2} )); then
       failed=1
+      print -r "Pattern match filead, line mismatch (${#diff_lines1}/${#diff_lines2}):"
     else
       for (( i = 1; i <= ${#diff_lines1}; i++ )); do
 	if [[ ${diff_lines2[i]} != ${~diff_lines1[i]} ]]; then
 	  failed=1
+	  print -r "Pattern match failed, line $i:"
 	  break
 	fi
       done
     fi
     if (( failed )); then
-      print -r "Pattern match failed, line $i:"
-      n=${#diff_lines1}
-      (( ${#diff_lines2} > $n )) && n=${#diff_lines2}
-      for (( l = 1; l <= n; ++l )); do
+      for (( l = 1; l <= ${#diff_lines1}; ++l )); do
 	if (( l == i )); then
 	  p="-"
 	else
@@ -342,7 +341,7 @@ ZTST_diff() {
 	fi
 	print -r -- "$p<${diff_lines1[l]}"
       done
-      for (( l = 1; l <= n; ++l )); do
+      for (( l = 1; l <= ${#diff_lines2}; ++l )); do
 	if (( l == i )); then
 	  p="+"
 	else