- Add functionality to skip tdir tests from the .pre file;

- Initial tests for interface-* options.
This commit is contained in:
George Thessalonikefs
2022-09-11 20:21:32 +02:00
parent aec33b3d63
commit fc123303ac
10 changed files with 322 additions and 9 deletions
+2
View File
@@ -16,6 +16,7 @@ NEED_WHOAMI='07-confroot.tdir'
NEED_IPV6='fwd_ancil.tdir fwd_tcp_tc6.tdir stub_udp6.tdir edns_cache.tdir'
NEED_NOMINGW='tcp_sigpipe.tdir 07-confroot.tdir 08-host-lib.tdir fwd_ancil.tdir'
NEED_DNSCRYPT_PROXY='dnscrypt_queries.tdir dnscrypt_queries_chacha.tdir'
NEED_UNSHARE='acl_interface.tdir'
# test if dig and ldns-testns are available.
test_tool_avail "dig"
@@ -50,6 +51,7 @@ for test in `ls -d *.tdir`; do
skip_if_in_list $test "$NEED_NC" "nc"
skip_if_in_list $test "$NEED_WHOAMI" "whoami"
skip_if_in_list $test "$NEED_DNSCRYPT_PROXY" "dnscrypt-proxy"
skip_if_in_list $test "$NEED_UNSHARE" "unshare"
if echo $NEED_IPV6 | grep $test >/dev/null; then
if test "$HAVE_IPV6" = no; then
+21 -9
View File
@@ -17,9 +17,9 @@ fi
if test "$1" = "clean"; then
if test $quiet = 0; then
echo "rm -f result.* .done* .tdir.var.master .tdir.var.test"
echo "rm -f result.* .done* .skip* .tdir.var.master .tdir.var.test"
fi
rm -f result.* .done* .tdir.var.master .tdir.var.test
rm -f result.* .done* .skip* .tdir.var.master .tdir.var.test
exit 0
fi
if test "$1" = "fake"; then
@@ -54,12 +54,15 @@ if test "$1" = "-f" && test "$2" = "report"; then
echo "** PASSED ** $timelen $name: $desc"
pass=`expr $pass + 1`
fi
elif test -f ".skip-$name"; then
echo ">> SKIPPED<< $timelen $name: $desc"
skip=`expr $pass + 1`
else
if test -f "result.$name"; then
echo "!! FAILED !! $timelen $name: $desc"
fail=`expr $fail + 1`
else
echo ".> SKIPPED<< $timelen $name: $desc"
echo ">> SKIPPED<< $timelen $name: $desc"
skip=`expr $skip + 1`
fi
fi
@@ -81,6 +84,10 @@ if test "$1" = "report" || test "$2" = "report"; then
if test $quiet = 0; then
echo "** PASSED ** : $name"
fi
elif test -f ".skip-$name"; then
if test $quiet = 0; then
echo ">> SKIPPED<< : $name"
fi
else
if test -f "result.$name"; then
echo "!! FAILED !! : $name"
@@ -116,6 +123,7 @@ name=`basename $1 .tdir`
dir=$name.$$
result=result.$name
done=.done-$name
skip=.skip-$name
success="no"
if test -x "`which bash`"; then
shell="bash"
@@ -124,8 +132,8 @@ else
fi
# check already done
if test -f .done-$name; then
echo "minitdir .done-$name exists. skip test."
if test -f $done; then
echo "minitdir $done exists. skip test."
exit 0
fi
@@ -151,11 +159,15 @@ if test -f $name.pre; then
fi
echo "minitdir exe $name.pre" >> $result
$shell $name.pre $args >> $result
if test $? -ne 0; then
exit_value=$?
if test $exit_value -eq 3; then
echo "$name: SKIPPED" >> $result
echo "$name: SKIPPED" > ../$skip
elif test $exit_value -ne 0; then
echo "Warning: $name.pre did not exit successfully"
fi
fi
if test -f $name.test; then
if test -f $name.test -a ! -f ../$skip; then
if test $quiet = 0; then
echo "minitdir exe $name.test"
fi
@@ -167,14 +179,14 @@ if test -f $name.test; then
success="no"
else
echo "$name: PASSED" >> $result
echo "$name: PASSED" > ../.done-$name
echo "$name: PASSED" > ../$done
if test $quiet = 0; then
echo "$name: PASSED"
fi
success="yes"
fi
fi
if test -f $name.post; then
if test -f $name.post -a ! -f ../$skip; then
if test $quiet = 0; then
echo "minitdir exe $name.post"
fi