From 1e5cac716f2935fc0a87d3546649347a8875c0f9 Mon Sep 17 00:00:00 2001 From: Guy Harris Date: Wed, 30 Aug 2017 21:36:24 -0700 Subject: [PATCH] Count the complex tests correctly, and pick up the counts correctly. --- tests/TESTrun.sh | 15 +++---- tests/crypto.sh | 90 ++++++++++++++++++++++++++++++------- tests/isis-seg-fault-1-v.sh | 13 +++++- tests/lmp-v.sh | 13 +++++- tests/nflog-e.sh | 13 +++++- 5 files changed, 112 insertions(+), 32 deletions(-) diff --git a/tests/TESTrun.sh b/tests/TESTrun.sh index 68af3912..64490824 100755 --- a/tests/TESTrun.sh +++ b/tests/TESTrun.sh @@ -11,22 +11,15 @@ runComplexTests() for i in *.sh do case $i in TEST*.sh) continue;; esac - if sh ./$i - then - passed=`expr $passed + 1` - echo $passed >.passed - else - failed=`expr $failed + 1` - echo $failed >.failed - fi + sh ./$i done } runSimpleTests() { + passed=`cat .passed` + failed=`cat .failed` only=$1 - echo $passed >.passed - echo $failed >.failed cat TESTLIST | while read name input output options do case $name in @@ -50,6 +43,8 @@ runSimpleTests() failed=`cat .failed` } +echo $passed >.passed +echo $failed >.failed if [ $# -eq 0 ] then runComplexTests diff --git a/tests/crypto.sh b/tests/crypto.sh index 5e295957..dd852bab 100755 --- a/tests/crypto.sh +++ b/tests/crypto.sh @@ -6,12 +6,35 @@ exitcode=0 if grep '^#define HAVE_LIBCRYPTO 1$' ../config.h >/dev/null then - ./TESTonce esp1 02-sunrise-sunset-esp.pcap esp1.out '-E "0x12345678@192.1.2.45 3des-cbc-hmac96:0x4043434545464649494a4a4c4c4f4f515152525454575758"' - [ $? -eq 0 ] || exitcode=1 - ./TESTonce esp2 08-sunrise-sunset-esp2.pcap esp2.out '-E "0x12345678@192.1.2.45 3des-cbc-hmac96:0x43434545464649494a4a4c4c4f4f51515252545457575840,0xabcdabcd@192.0.1.1 3des-cbc-hmac96:0x434545464649494a4a4c4c4f4f5151525254545757584043"' - [ $? -eq 0 ] || exitcode=1 - ./TESTonce esp3 02-sunrise-sunset-esp.pcap esp1.out '-E "3des-cbc-hmac96:0x4043434545464649494a4a4c4c4f4f515152525454575758"' - [ $? -eq 0 ] || exitcode=1 + passed=`cat .passed` + failed=`cat .failed` + if ./TESTonce esp1 02-sunrise-sunset-esp.pcap esp1.out '-E "0x12345678@192.1.2.45 3des-cbc-hmac96:0x4043434545464649494a4a4c4c4f4f515152525454575758"' + then + passed=`expr $passed + 1` + echo $passed >.passed + else + failed=`expr $failed + 1` + echo $failed >.failed + exitcode=1 + fi + if ./TESTonce esp2 08-sunrise-sunset-esp2.pcap esp2.out '-E "0x12345678@192.1.2.45 3des-cbc-hmac96:0x43434545464649494a4a4c4c4f4f51515252545457575840,0xabcdabcd@192.0.1.1 3des-cbc-hmac96:0x434545464649494a4a4c4c4f4f5151525254545757584043"' + then + passed=`expr $passed + 1` + echo $passed >.passed + else + failed=`expr $failed + 1` + echo $failed >.failed + exitcode=1 + fi + if ./TESTonce esp3 02-sunrise-sunset-esp.pcap esp1.out '-E "3des-cbc-hmac96:0x4043434545464649494a4a4c4c4f4f515152525454575758"' + then + passed=`expr $passed + 1` + echo $passed >.passed + else + failed=`expr $failed + 1` + echo $failed >.failed + exitcode=1 + fi # Reading the secret(s) from a file does not work with Capsicum. if grep '^#define HAVE_CAPSICUM 1$' ../config.h >/dev/null then @@ -22,16 +45,51 @@ then printf "$FORMAT" ikev2pI2 printf "$FORMAT" isakmp4 else - ./TESTonce esp4 08-sunrise-sunset-esp2.pcap esp2.out '-E "file esp-secrets.txt"' - [ $? -eq 0 ] || exitcode=1 - ./TESTonce esp5 08-sunrise-sunset-aes.pcap esp5.out '-E "file esp-secrets.txt"' - [ $? -eq 0 ] || exitcode=1 - ./TESTonce espudp1 espudp1.pcap espudp1.out '-nnnn -E "file esp-secrets.txt"' - [ $? -eq 0 ] || exitcode=1 - ./TESTonce ikev2pI2 ikev2pI2.pcap ikev2pI2.out '-E "file ikev2pI2-secrets.txt" -v -v -v -v' - [ $? -eq 0 ] || exitcode=1 - ./TESTonce isakmp4 isakmp4500.pcap isakmp4.out '-E "file esp-secrets.txt"' - [ $? -eq 0 ] || exitcode=1 + if ./TESTonce esp4 08-sunrise-sunset-esp2.pcap esp2.out '-E "file esp-secrets.txt"' + then + passed=`expr $passed + 1` + echo $passed >.passed + else + failed=`expr $failed + 1` + echo $failed >.failed + exitcode=1 + fi + if ./TESTonce esp5 08-sunrise-sunset-aes.pcap esp5.out '-E "file esp-secrets.txt"' + then + passed=`expr $passed + 1` + echo $passed >.passed + else + failed=`expr $failed + 1` + echo $failed >.failed + exitcode=1 + fi + if ./TESTonce espudp1 espudp1.pcap espudp1.out '-nnnn -E "file esp-secrets.txt"' + then + passed=`expr $passed + 1` + echo $passed >.passed + else + failed=`expr $failed + 1` + echo $failed >.failed + exitcode=1 + fi + if ./TESTonce ikev2pI2 ikev2pI2.pcap ikev2pI2.out '-E "file ikev2pI2-secrets.txt" -v -v -v -v' + then + passed=`expr $passed + 1` + echo $passed >.passed + else + failed=`expr $failed + 1` + echo $failed >.failed + exitcode=1 + fi + if ./TESTonce isakmp4 isakmp4500.pcap isakmp4.out '-E "file esp-secrets.txt"' + then + passed=`expr $passed + 1` + echo $passed >.passed + else + failed=`expr $failed + 1` + echo $failed >.failed + exitcode=1 + fi fi else FORMAT=' %-35s: TEST SKIPPED (compiled w/o OpenSSL)\n' diff --git a/tests/isis-seg-fault-1-v.sh b/tests/isis-seg-fault-1-v.sh index 57965e8e..d19b4a87 100755 --- a/tests/isis-seg-fault-1-v.sh +++ b/tests/isis-seg-fault-1-v.sh @@ -12,8 +12,17 @@ then printf ' %-35s: TEST SKIPPED (no Makefile)\n' $test_name elif grep '^CC = .*gcc' ../Makefile >/dev/null then - ./TESTonce $test_name isis-seg-fault-1.pcap isis-seg-fault-1-v.out '-v' - [ $? -eq 0 ] || exitcode=1 + passed=`cat .passed` + failed=`cat .failed` + if ./TESTonce $test_name isis-seg-fault-1.pcap isis-seg-fault-1-v.out '-v' + then + passed=`expr $passed + 1` + echo $passed >.passed + else + failed=`expr $failed + 1` + echo $failed >.failed + exitcode=1 + fi else printf ' %-35s: TEST SKIPPED (compiler is not GCC)\n' $test_name fi diff --git a/tests/lmp-v.sh b/tests/lmp-v.sh index 2d018864..a8c6740e 100755 --- a/tests/lmp-v.sh +++ b/tests/lmp-v.sh @@ -15,8 +15,17 @@ then printf ' %-35s: TEST SKIPPED (no Makefile)\n' 'lmp-v' elif grep '^CC = .*gcc' ../Makefile >/dev/null then - ./TESTonce lmp-v lmp.pcap lmp-v.out '-T lmp -v' - [ $? -eq 0 ] || exitcode=1 + passed=`cat .passed` + failed=`cat .failed` + if ./TESTonce lmp-v lmp.pcap lmp-v.out '-T lmp -v' + then + passed=`expr $passed + 1` + echo $passed >.passed + else + failed=`expr $failed + 1` + echo $failed >.failed + exitcode=1 + fi else printf ' %-35s: TEST SKIPPED (compiler is not GCC)\n' 'lmp-v' fi diff --git a/tests/nflog-e.sh b/tests/nflog-e.sh index 5b002bf1..5b5b66ce 100755 --- a/tests/nflog-e.sh +++ b/tests/nflog-e.sh @@ -6,8 +6,17 @@ exitcode=0 if grep '^#define HAVE_PCAP_NFLOG_H 1$' ../config.h >/dev/null then - ./TESTonce nflog-e nflog.pcap nflog-e.out '-e' - [ $? -eq 0 ] || exitcode=1 + passed=`cat .passed` + failed=`cat .failed` + if ./TESTonce nflog-e nflog.pcap nflog-e.out '-e' + then + passed=`expr $passed + 1` + echo $passed >.passed + else + failed=`expr $failed + 1` + echo $failed >.failed + exitcode=1 + fi else printf ' %-35s: TEST SKIPPED (compiled w/o NFLOG)\n' 'nflog-e' fi -- 2.39.5