From bdd595321fc3e95e8e60319d130b287bedc33d26 Mon Sep 17 00:00:00 2001
From: Peter Stephenson
Date: Wed, 25 Apr 2018 18:15:21 +0100
Subject: 42722: Replace ed with dc in fg/bg tests.
This should be even simpler.
Also more fix ups for failed pattern diffs.
---
Test/W02jobs.ztst | 44 +++++++++++++++++++-------------------------
Test/ztst.zsh | 15 +++++++--------
2 files changed, 26 insertions(+), 33 deletions(-)
(limited to 'Test')
diff --git a/Test/W02jobs.ztst b/Test/W02jobs.ztst
index 1ec0b8e8b..6d5a41f00 100644
--- a/Test/W02jobs.ztst
+++ b/Test/W02jobs.ztst
@@ -192,52 +192,46 @@
*>\[1] ? kill*sleep*
zpty_start
- zpty_input $'ed 2>/dev/null\n=\n'
+ zpty_input $'dc 2>/dev/null\n1\np\n'
zpty_line
- zpty_input $'a\nstuff1\n.\nw tmpfile\nq\n'
+ zpty_input $'1\n+\np\nq\n'
zpty_stop
- cat tmpfile
- rm -f tmpfile
0:Sanity check of "ed" as foreground process
-*>0
-*>stuff1
-F:This test checks we can run the simple editor "ed" as a way of testing
+*>1
+*>2
+F:This test checks we can run the simple calculator dc as a way of testing
F:user interaction for later job control tests . The test itself is
F:trivial; its failure may simply indicate our test methodology does not
F:work on this system.
zpty_start
- zpty_input $'ed 2>/dev/null\n=\n'
+ zpty_input $'dc 2>/dev/null\n1\np\n'
zpty_line
zpty_input $'\C-z'
zpty_input 'fg'
- zpty_input $'a\nstuff2\n.\nw tmpfile\nq\n'
+ zpty_input $'1\n+\np\nq\n'
zpty_stop
- cat tmpfile
- rm -f tmpfile
0:Basic fg with subsequent user interaction
-*>0
-*>zsh:*(stopped|suspended)*ed*
-*>*continued*ed*
-*>stuff2
+*>1
+*>zsh:*(stopped|suspended)*dc*
+*>*continued*dc*
+*>2
zpty_start
- zpty_input $'ed 2>/dev/null\n=\n'
+ zpty_input $'dc 2>/dev/null\n1\np\n'
zpty_line
zpty_input $'\C-z'
zpty_input 'bg'
zpty_input 'fg'
- zpty_input $'a\nstuff3\n.\nw tmpfile\nq\n'
+ zpty_input $'1\n+\np\nq\n'
zpty_stop
- cat tmpfile
- rm -f tmpfile
0:bg and fg with user input
-*>0
-*>zsh:*(stopped|suspended)*ed*
-*>*continued*ed*
-*>*(stopped|suspended)*ed*
-*>*continued*ed*
-*>stuff3
+*>1
+*>zsh:*(stopped|suspended)*dc*
+*>*continued*dc*
+*>*(stopped|suspended)*dc*
+*>*continued*dc*
+*>2
%clean
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
--
cgit 1.4.1