Make tests optional

Make it possible to skip some test using parameter. In some cases, just
single pass is required.
Also fix case when no known defects are specified for a variant.
This commit is contained in:
Petr Menšík 2019-08-28 00:16:40 +02:00
parent 0983c90fb0
commit 545e2cb4bc
1 changed files with 22 additions and 10 deletions

View File

@ -32,6 +32,10 @@
PACKAGE="bind"
# Set those variables to n to skip tests on variants
DEFAULT_VARIANTS="normal pkcs11 sdb"
#TEST_VARIANTS="normal"
#
# Runs test suite and checks known errors
# Prepared to be repeated with another variants
@ -39,7 +43,7 @@ run_testsuite()
{
local RESULT_TEXT="$TMPDIR/test${NAMED_VARIANT}.txt"
local FOUNDERROR=`mktemp found-XXXXXXXX.err`
local KNOWNERROR
local KNOWNERROR=/dev/null
if [ -f "$ORIG/knownerror${NAMED_VARIANT}.$TAG" ]; then
KNOWNERROR=`readlink -f $ORIG/knownerror.$TAG`
@ -142,17 +146,25 @@ rlJournalStart
rlRun "pushd $BUILD"
rlLog "Running normal variant"
export NAMED_VARIANT= DNSSEC_VARIANT=
run_testsuite
if echo "${TEST_VARIANTS:-$DEFAULT_VARIANTS}" | grep -q normal; then
rlLog "Running normal variant"
export NAMED_VARIANT= DNSSEC_VARIANT=
run_testsuite
fi
rlLog "Running pkcs11 variant"
export NAMED_VARIANT=-pkcs11 DNSSEC_VARIANT=-pkcs11
run_testsuite
if echo "${TEST_VARIANTS:-$DEFAULT_VARIANTS}" | grep -q sdb; then
rlLog "Running sdb variant"
export NAMED_VARIANT=-sdb DNSSEC_VARIANT=
run_testsuite
fi
rlLog "Running sdb variant"
export NAMED_VARIANT=-sdb DNSSEC_VARIANT=
run_testsuite
if echo "${TEST_VARIANTS:-$DEFAULT_VARIANTS}" | grep -q pkcs11; then
rlLog "Running pkcs11 variant"
# Unfortunately, PKCS11 variant uses shared key storage
# It cannot use more threads for that reason
export NAMED_VARIANT=-pkcs11 DNSSEC_VARIANT=-pkcs11
CORES=1 run_testsuite
fi
rlRun "popd"