1
0
Fork 0
mirror of git://git.code.sf.net/p/cdesktopenv/code synced 2025-03-09 15:50:02 +00:00

Fix xtrace (shtests -x) for the regression tests

src/cmd/ksh93/tests/{shtests,_common}:
- When xtrace is active, set SECONDS to the float type so that
  the $SECONDS expansion in $PS4 shows fractional seconds.

src/cmd/ksh93/tests/*.sh:
- Various fixes to avoid command substitutions incorporating xtrace
  output into their results. Sometimes this is done by avoiding a
  preceding assignment on a command that redirects 2>&1 (as that
  will also redirect the preceding assignment and its xtrace,
  causing the command substitution to capture the xtrace); other
  times it was easiest to just turn off xtrace outright within the
  command substitution.

src/cmd/ksh93/tests/math.sh:
- Remove an obsolete 'fixme' note.
This commit is contained in:
Martijn Dekker 2021-05-14 19:38:20 +02:00
parent 16080141c5
commit c59d888394
11 changed files with 38 additions and 21 deletions

View file

@ -667,7 +667,7 @@ got=$(eval 'x=`for i in test; do case $i in test) true;; esac; done`' 2>&1) \
# Redirecting disabled the DEBUG trap
exp=$'LINENO: 4\nfoo\nLINENO: 5\nLINENO: 6\nbar\nLINENO: 7\nbaz'
got=$({ "$SHELL" -c '
got=$(set +x; { "$SHELL" -c '
PATH=/dev/null
trap "echo LINENO: \$LINENO >&1" DEBUG # 3
echo foo # 4
@ -680,7 +680,7 @@ got=$({ "$SHELL" -c '
# The DEBUG trap crashed when re-trapping inside a subshell
exp=$'trap -- \': main\' EXIT\ntrap -- \': main\' ERR\ntrap -- \': main\' KEYBD\ntrap -- \': main\' DEBUG'
got=$({ "$SHELL" -c '
got=$(set +x; { "$SHELL" -c '
PATH=/dev/null
for sig in EXIT ERR KEYBD DEBUG
do trap ": main" $sig
@ -694,7 +694,7 @@ got=$({ "$SHELL" -c '
# Field splitting broke upon evaluating an unquoted expansion in a DEBUG trap
exp=$'a\nb\nc'
got=$({ "$SHELL" -c '
got=$(set +x; { "$SHELL" -c '
PATH=/dev/null
v=""
trap ": \$v" DEBUG