mirror of
git://git.code.sf.net/p/zsh/code
synced 2025-01-16 22:10:54 +01:00
82ff9f24f1
Changes typeset such that ${newparam-notset} yields "notset" and "typeset -p newparam" does not show an assignment to the parameter. This is similar to the default behavior of bash and ksh, with minor differences in typeset output. Also add tests for some POSIX incompatibilities plus minor changes for test harness robustness.
27 lines
764 B
Bash
27 lines
764 B
Bash
#!/bin/zsh -f
|
|
|
|
emulate zsh
|
|
|
|
# Run all specified tests, keeping count of which succeeded.
|
|
# The reason for this extra layer above the test script is to
|
|
# protect from catastrophic failure of an individual test.
|
|
# We could probably do that with subshells instead.
|
|
|
|
integer success=0 failure=0 skipped=0 retval
|
|
for file in "${(f)ZTST_testlist}"; do
|
|
$ZTST_exe +Z -f $ZTST_srcdir/ztst.zsh $file
|
|
retval=$?
|
|
if (( $retval == 2 )); then
|
|
(( skipped++ ))
|
|
elif (( $retval )); then
|
|
(( failure++ ))
|
|
else
|
|
(( success++ ))
|
|
fi
|
|
done
|
|
print "**************************************
|
|
$success successful test script${${success:#1}:+s}, \
|
|
$failure failure${${failure:#1}:+s}, \
|
|
$skipped skipped
|
|
**************************************"
|
|
return $(( failure ? 1 : 0 ))
|