changeset 160:94502600a049 powertable

First test of power sequence search. (and add capability to write negative numbers from floatstring)
author mas01cr
date Thu, 01 Nov 2007 15:58:36 +0000
parents c47839762aa8
children 057217009d0e
files tests/0027/run-test.sh tests/0027/short-description tests/test-utils.sh
diffstat 3 files changed, 108 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/0027/run-test.sh	Thu Nov 01 15:58:36 2007 +0000
@@ -0,0 +1,103 @@
+#! /bin/sh
+
+. ../test-utils.sh
+
+if [ -f testdb ]; then rm -f testdb; fi
+
+${AUDIODB} -d testdb -N
+
+intstring 2 > testfeature
+floatstring 0 1 >> testfeature
+floatstring 1 0 >> testfeature
+
+intstring 1 > testpower
+floatstring -0.5 >> testpower
+floatstring -1 >> testpower
+
+expect_clean_error_exit ${AUDIODB} -d testdb -I -f testfeature -w testpower
+
+${AUDIODB} -d testdb -P
+
+expect_clean_error_exit ${AUDIODB} -d testdb -I -f testfeature
+
+${AUDIODB} -d testdb -I -f testfeature -w testpower
+
+# sequence queries require L2NORM
+${AUDIODB} -d testdb -L
+
+# queries without power files should run as before
+echo "query point (0.0,0.5)"
+intstring 2 > testquery
+floatstring 0 0.5 >> testquery
+
+${AUDIODB} -d testdb -Q sequence -l 1 -f testquery > testoutput
+echo testfeature 1 0 0 > test-expected-output
+cmp testoutput test-expected-output
+${AUDIODB} -d testdb -Q sequence -l 1 -f testquery -n 1 > testoutput
+echo testfeature 0 0 0 > test-expected-output
+cmp testoutput test-expected-output
+
+echo "query point (0.5,0.0)"
+intstring 2 > testquery
+floatstring 0.5 0 >> testquery
+
+${AUDIODB} -d testdb -Q sequence -l 1 -f testquery > testoutput
+echo testfeature 1 0 1 > test-expected-output
+cmp testoutput test-expected-output
+${AUDIODB} -d testdb -Q sequence -l 1 -f testquery -n 1 > testoutput
+echo testfeature 0 0 1 > test-expected-output
+cmp testoutput test-expected-output
+
+# queries with power files might do something different
+echo "query point (0.0,0.5), p=-0.5"
+intstring 2 > testquery
+floatstring 0 0.5 >> testquery
+
+intstring 1 > testquerypower
+floatstring -0.5 >> testquerypower
+
+${AUDIODB} -d testdb -Q sequence -l 1 -f testquery -w testquerypower --absolute-threshold=-1.4 > testoutput
+echo testfeature 1 0 0 > test-expected-output
+cmp testoutput test-expected-output
+
+${AUDIODB} -d testdb -Q sequence -l 1 -f testquery -w testquerypower --absolute-threshold=-0.6 > testoutput
+echo testfeature 0 0 0 > test-expected-output
+cmp testoutput test-expected-output
+
+${AUDIODB} -d testdb -Q sequence -l 1 -f testquery -w testquerypower --absolute-threshold=-0.2 > testoutput
+cat /dev/null > test-expected-output
+cmp testoutput test-expected-output
+
+${AUDIODB} -d testdb -Q sequence -l 1 -f testquery -w testquerypower --relative-threshold=1 > testoutput
+echo testfeature 1 0 0 > test-expected-output
+cmp testoutput test-expected-output
+
+${AUDIODB} -d testdb -Q sequence -l 1 -f testquery -w testquerypower --relative-threshold=0.2 > testoutput
+echo testfeature 0 0 0 > test-expected-output
+cmp testoutput test-expected-output
+
+echo "query point (0.5,0.0), p=-0.5"
+intstring 2 > testquery
+floatstring 0.5 0 >> testquery
+
+${AUDIODB} -d testdb -Q sequence -l 1 -f testquery -w testquerypower --absolute-threshold=-1.4 > testoutput
+echo testfeature 1 0 1 > test-expected-output
+cmp testoutput test-expected-output
+
+${AUDIODB} -d testdb -Q sequence -l 1 -f testquery -w testquerypower --absolute-threshold=-0.6 > testoutput
+echo testfeature 2 0 0 > test-expected-output
+cmp testoutput test-expected-output
+
+${AUDIODB} -d testdb -Q sequence -l 1 -f testquery -w testquerypower --absolute-threshold=-0.2 > testoutput
+cat /dev/null > test-expected-output
+cmp testoutput test-expected-output
+
+${AUDIODB} -d testdb -Q sequence -l 1 -f testquery -w testquerypower --relative-threshold=1 > testoutput
+echo testfeature 1 0 1 > test-expected-output
+cmp testoutput test-expected-output
+
+${AUDIODB} -d testdb -Q sequence -l 1 -f testquery -w testquerypower --relative-threshold=0.2 > testoutput
+echo testfeature 2 0 0 > test-expected-output
+cmp testoutput test-expected-output
+
+exit 104
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/0027/short-description	Thu Nov 01 15:58:36 2007 +0000
@@ -0,0 +1,1 @@
+0006 with power
\ No newline at end of file
--- a/tests/test-utils.sh	Thu Nov 01 15:22:29 2007 +0000
+++ b/tests/test-utils.sh	Thu Nov 01 15:58:36 2007 +0000
@@ -30,8 +30,12 @@
     case ${arg} in
       0)
         printf "\x00\x00\x00\x00\x00\x00\x00\x00";;
+      -0.5)
+        printf "\x00\x00\x00\x00\x00\x00\xe0\xbf";;
       0.5)
         printf "\x00\x00\x00\x00\x00\x00\xe0\x3f";;
+      -1)
+        printf "\x00\x00\x00\x00\x00\x00\xf0\xbf";;
       1)
         printf "\x00\x00\x00\x00\x00\x00\xf0\x3f";;
       *)