From 5fb00dd283f0a707301f616bd617d0a2baea4d0d Mon Sep 17 00:00:00 2001 From: Kamal Mostafa Date: Mon, 13 Aug 2012 21:19:08 -0700 Subject: [PATCH] self-test: more test cases --- src/Makefile.am | 2 +- src/Makefile.in | 2 +- src/self-test-perfect | 25 +++++++++++++++++++ src/testcases/test-07-self-test-no-lut | 1 + src/testcases/test-08-self-test-lut16 | 1 + src/testcases/test-09-self-test-lut16-float | 1 + src/testcases/test-10-verify-perfect | 16 ++---------- src/testcases/test-11-verify-perfect-nolut | 2 ++ src/testcases/test-12-verify-perfect-lut16 | 2 ++ .../test-13-verify-perfect-nolut-float | 2 ++ .../test-14-verify-perfect-lut16-float | 2 ++ src/testcases/test-15-verify-perfect-float | 2 ++ 12 files changed, 42 insertions(+), 16 deletions(-) create mode 100755 src/self-test-perfect create mode 100755 src/testcases/test-07-self-test-no-lut create mode 100755 src/testcases/test-08-self-test-lut16 create mode 100755 src/testcases/test-09-self-test-lut16-float create mode 100755 src/testcases/test-11-verify-perfect-nolut create mode 100755 src/testcases/test-12-verify-perfect-lut16 create mode 100755 src/testcases/test-13-verify-perfect-nolut-float create mode 100755 src/testcases/test-14-verify-perfect-lut16-float create mode 100755 src/testcases/test-15-verify-perfect-float diff --git a/src/Makefile.am b/src/Makefile.am index b3314a9..96c7154 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -26,7 +26,7 @@ bin_PROGRAMS = minimodem dist_man_MANS = minimodem.1 -EXTRA_DIST = minimodem.1.html self-test testcases/* # run-test +EXTRA_DIST = minimodem.1.html self-test self-test-perfect testcases/* # run-test TESTS = testcases/test-* diff --git a/src/Makefile.in b/src/Makefile.in index 9212aab..3e730a7 100644 --- a/src/Makefile.in +++ b/src/Makefile.in @@ -211,7 +211,7 @@ top_srcdir = @top_srcdir@ AM_CFLAGS = -Wall # -Werror INCLUDES = $(DEPS_CFLAGS) dist_man_MANS = minimodem.1 -EXTRA_DIST = minimodem.1.html self-test testcases/* # run-test +EXTRA_DIST = minimodem.1.html self-test self-test-perfect testcases/* # run-test TESTS = testcases/test-* SIMPLEAUDIO_SRC = \ simpleaudio.h \ diff --git a/src/self-test-perfect b/src/self-test-perfect new file mode 100755 index 0000000..8192d48 --- /dev/null +++ b/src/self-test-perfect @@ -0,0 +1,25 @@ +#!/bin/bash + +[ $# -ge 2 ] || { + echo "usage: self-test-perfect textfile minimodem_args" 1>&2 + exit 1 +} +textfile="$1" +shift +minimodem_args="$*" + +TMPF=/tmp/minimodem-test.$$ +trap "rm -f $TMPF" 0 + +# test for "confidence=1.00" and "rate perfect" +./self-test "$textfile" $minimodem_args 2>&1 | tee $TMPF + +ndata=$(wc -c <$textfile) + +match="ndata=$ndata confidence=1.00 .* (rate perfect)" +grep -q "$match" $TMPF || { +echo "Not perfect; expected: $match" + exit 1 +} +echo "Perfect!" +exit 0 diff --git a/src/testcases/test-07-self-test-no-lut b/src/testcases/test-07-self-test-no-lut new file mode 100755 index 0000000..fb4def6 --- /dev/null +++ b/src/testcases/test-07-self-test-no-lut @@ -0,0 +1 @@ +exec ./self-test fsk.c 1200 --lut=0 diff --git a/src/testcases/test-08-self-test-lut16 b/src/testcases/test-08-self-test-lut16 new file mode 100755 index 0000000..a63315c --- /dev/null +++ b/src/testcases/test-08-self-test-lut16 @@ -0,0 +1 @@ +exec ./self-test fsk.c 1200 --lut=16 diff --git a/src/testcases/test-09-self-test-lut16-float b/src/testcases/test-09-self-test-lut16-float new file mode 100755 index 0000000..08f9108 --- /dev/null +++ b/src/testcases/test-09-self-test-lut16-float @@ -0,0 +1 @@ +exec ./self-test fsk.c 1200 --lut=16 --float-samples diff --git a/src/testcases/test-10-verify-perfect b/src/testcases/test-10-verify-perfect index f98744e..40e961d 100755 --- a/src/testcases/test-10-verify-perfect +++ b/src/testcases/test-10-verify-perfect @@ -1,16 +1,4 @@ -#!/bin/bash - -TMPF=/tmp/minimodem-test.$$ -trap "rm -f $TMPF" 0 - # test for confidence=1.00 when using exact integer multiple frequencies -./self-test testcases/self-test-ascii.txt \ - 1200 --samplerate 24000 -M 1200 -S 2400 2>&1 | tee $TMPF +exec ./self-test-perfect testcases/self-test-ascii.txt \ + 1200 --samplerate 24000 -M 1200 -S 2400 -match="ndata=3123 confidence=1.00 throughput=1200.00 (rate perfect)" -grep -q "$match" $TMPF || { - echo "Expected: $match" - exit 1 -} -echo "Perfect!" -exit 0 diff --git a/src/testcases/test-11-verify-perfect-nolut b/src/testcases/test-11-verify-perfect-nolut new file mode 100755 index 0000000..bd8f031 --- /dev/null +++ b/src/testcases/test-11-verify-perfect-nolut @@ -0,0 +1,2 @@ +exec ./self-test-perfect testcases/self-test-ascii.txt \ + 1200 --samplerate 24000 -M 1200 -S 2400 --lut=0 diff --git a/src/testcases/test-12-verify-perfect-lut16 b/src/testcases/test-12-verify-perfect-lut16 new file mode 100755 index 0000000..ed465ad --- /dev/null +++ b/src/testcases/test-12-verify-perfect-lut16 @@ -0,0 +1,2 @@ +exec ./self-test-perfect testcases/self-test-ascii.txt \ + 1200 --samplerate 24000 -M 1200 -S 2400 --lut=16 diff --git a/src/testcases/test-13-verify-perfect-nolut-float b/src/testcases/test-13-verify-perfect-nolut-float new file mode 100755 index 0000000..cbb7229 --- /dev/null +++ b/src/testcases/test-13-verify-perfect-nolut-float @@ -0,0 +1,2 @@ +exec ./self-test-perfect testcases/self-test-ascii.txt \ + 1200 --samplerate 24000 -M 1200 -S 2400 --lut=0 --float-samples diff --git a/src/testcases/test-14-verify-perfect-lut16-float b/src/testcases/test-14-verify-perfect-lut16-float new file mode 100755 index 0000000..626295e --- /dev/null +++ b/src/testcases/test-14-verify-perfect-lut16-float @@ -0,0 +1,2 @@ +exec ./self-test-perfect testcases/self-test-ascii.txt \ + 1200 --samplerate 24000 -M 1200 -S 2400 --lut=16 --float-samples diff --git a/src/testcases/test-15-verify-perfect-float b/src/testcases/test-15-verify-perfect-float new file mode 100755 index 0000000..b2e38bf --- /dev/null +++ b/src/testcases/test-15-verify-perfect-float @@ -0,0 +1,2 @@ +exec ./self-test-perfect testcases/self-test-ascii.txt \ + 1200 --samplerate 24000 -M 1200 -S 2400 --float-samples