summaryrefslogtreecommitdiff
path: root/test/run_tests.sh
diff options
context:
space:
mode:
authorToni Uhlig <matzeton@googlemail.com>2021-03-24 11:17:49 +0100
committerToni Uhlig <matzeton@googlemail.com>2021-03-24 11:28:56 +0100
commite835d36f63c337fa0546fcdf2c3b46261851de68 (patch)
tree85101ca0a6e540032d6cc0ddc76009021d5bbaac /test/run_tests.sh
parentbdc8c5df2a25f2b626e8f5d6672d11f3ac35a694 (diff)
Added nDPId-test as all-in-one JSON dumper.
* fixed invalid flow event schema type * added run_tests.sh to generate/diff JSON dumps * renamed lot's of vars/fns in nDPId.c/nDPIsrvd.c, so nDPId-test.c can include "*.c" * improved CMake dependency checks Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
Diffstat (limited to 'test/run_tests.sh')
-rwxr-xr-xtest/run_tests.sh51
1 files changed, 51 insertions, 0 deletions
diff --git a/test/run_tests.sh b/test/run_tests.sh
new file mode 100755
index 000000000..918767c8d
--- /dev/null
+++ b/test/run_tests.sh
@@ -0,0 +1,51 @@
+#!/usr/bin/env sh
+
+set -e
+
+MYDIR="$(realpath "$(dirname ${0})")"
+nDPId_test_EXEC="${2:-"$(realpath "${MYDIR}/../nDPId-test")"}"
+nDPI_SOURCE_ROOT="${1}"
+
+if [ $# -ne 1 -a $# -ne 2 ]; then
+cat <<EOF
+usage: ${0} [path-to-nDPI-source-root] [path-to-nDPId-test-exec]
+
+ path-to-nDPId-test-exec defaults to ${nDPId_test_EXEC}
+EOF
+exit 1
+fi
+
+nDPI_TEST_DIR="${nDPI_SOURCE_ROOT}/tests/pcap"
+
+cat <<EOF
+nDPId-test......: ${nDPId_test_EXEC}
+nDPI source root: ${nDPI_TEST_DIR}
+EOF
+
+cd "${nDPI_TEST_DIR}"
+mkdir -p /tmp/nDPId-test-stderr
+set +e
+for pcap_file in $(ls *.pcap*); do
+ printf '%s' "${pcap_file}"
+
+ ${nDPId_test_EXEC} "${pcap_file}" \
+ >"${MYDIR}/results/${pcap_file}.out.new" \
+ 2>"/tmp/nDPId-test-stderr/${pcap_file}.out"
+
+ if [ $? -eq 0 ]; then
+ if diff -u0 "${MYDIR}/results/${pcap_file}.out" \
+ "${MYDIR}/results/${pcap_file}.out.new" >/dev/null; then
+ printf ' [%s]\n' 'OK'
+ else
+ printf ' [%s]\n' 'DIFF'
+ diff -u0 "${MYDIR}/results/${pcap_file}.out" \
+ "${MYDIR}/results/${pcap_file}.out.new"
+ mv -v "${MYDIR}/results/${pcap_file}.out.new" \
+ "${MYDIR}/results/${pcap_file}.out"
+ fi
+ else
+ printf ' [%s]\n' 'FAIL'
+ fi
+
+ rm -f "${MYDIR}/results/${pcap_file}.out.new"
+done