X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=tests%2Fafter;h=427b542293973dbd79f8d5d0f5fe955601824aee;hb=6bd7b64c780bf133b12df468cfe90df5d262e62a;hp=1eedc336b40b81afd77d101dc67d3073674b0a73;hpb=27cd5655e5c1537d9076d1f986f73a96b774e72d;p=chaz%2Ftar diff --git a/tests/after b/tests/after index 1eedc33..427b542 100755 --- a/tests/after +++ b/tests/after @@ -4,6 +4,33 @@ cd .. exec 1> /dev/null exec 2> /dev/null -echo $echo_n "$out$echo_c" | cmp -s - tmp-$$/stdout || exit 1 -echo $echo_n "$err$echo_c" | cmp -s - tmp-$$/stderr || exit 1 + +compare() { + eval tempfile=tmp-$$/std${1} + eval echo \""\${$1}"\" | sed '$d' > ${tempfile}0 + + sedscript=tmp-$$/${1}.sed + if eval test \".\${${1}_ignore}\" = .; then + : + else + eval echo \"\${${1}_ignore}\" | sed 's,^.*$,/&/d,;' > $sedscript + sed -f $sedscript ${tempfile} > ${tempfile}.1 + mv ${tempfile}.1 ${tempfile} + fi + + if eval test -z "\${${1}_regex}" ; then + cmp -s ${tempfile}0 ${tempfile} || exit 1 + else + awk '{print NR " " $0}' ${tempfile}0 > ${tempfile}.1 + awk '{print NR " " $0}' ${tempfile} | join ${tempfile}.1 - | + while read NUM RE LINE + do + echo "$LINE" | grep -- "$RE" >/dev/null || exit 1 + done + fi +} + +compare out +compare err + rm -rf tmp-$$