# HG changeset patch # User mas01cr # Date 1193932716 0 # Node ID 94502600a049aee99f090ab49b8ef4dea0408a8b # Parent c47839762aa83c585db5ddb0844585c5a4feb84d First test of power sequence search. (and add capability to write negative numbers from floatstring) diff -r c47839762aa8 -r 94502600a049 tests/0027/run-test.sh --- /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 diff -r c47839762aa8 -r 94502600a049 tests/0027/short-description --- /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 diff -r c47839762aa8 -r 94502600a049 tests/test-utils.sh --- 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";; *)