annotate tests/0050/run-test.sh @ 333:cc3f9d1ca2cd

Ugly hack upon ugly hack: * extend adb__query() to take a bunch of other arguments that allow useful functionality through to the SOAP server; * alter the RadiusQuery reporter so that the count for tracks is returned through SOAP, punning one of the result fields for the purpose; * alter argv construction to be more dynamic, to reflect that the very presence of some arguments changes audioDB behaviour. Now test 0020 passes, only some 12 months after it was originally written, yay. Alter test 0050 also, so that the results are actually vaguely what would be expected from a radius search; they are not completely checked for correctness, but are (apart from the last two) the same as test 0040. I believe that the modifications are backward compatible; lightly testing with an old audioDB binary suggests that old-format SOAP queries continue to work. Currently too baby-encumbered to think of how to test this fully.
author mas01cr
date Mon, 01 Sep 2008 15:35:05 +0000
parents a0493f861531
children
rev   line source
mas01mc@332 1 #! /bin/bash
mas01mc@332 2
mas01mc@332 3 . ../test-utils.sh
mas01mc@332 4
mas01mc@332 5 if [ -f testdb ]; then rm -f testdb; fi
mas01mc@332 6
mas01mc@332 7 ${AUDIODB} -d testdb -N
mas01mc@332 8
mas01mc@332 9 intstring 2 > testfeature
mas01mc@332 10 floatstring 0 1 >> testfeature
mas01mc@332 11 floatstring 1 0 >> testfeature
mas01mc@332 12 floatstring 1 0 >> testfeature
mas01mc@332 13 floatstring 0 1 >> testfeature
mas01mc@332 14
mas01mc@332 15 intstring 1 > testpower
mas01mc@332 16 floatstring -0.5 >> testpower
mas01mc@332 17 floatstring -1 >> testpower
mas01mc@332 18 floatstring -1 >> testpower
mas01mc@332 19 floatstring -0.5 >> testpower
mas01mc@332 20
mas01mc@332 21 expect_clean_error_exit ${AUDIODB} -d testdb -I -f testfeature -w testpower
mas01mc@332 22 ${AUDIODB} -d testdb -P
mas01mc@332 23 expect_clean_error_exit ${AUDIODB} -d testdb -I -f testfeature
mas01mc@332 24 ${AUDIODB} -d testdb -I -f testfeature -w testpower
mas01mc@332 25
mas01mc@332 26 # sequence queries require L2NORM
mas01mc@332 27 ${AUDIODB} -d testdb -L
mas01mc@332 28
mas01mc@332 29 echo "query points (0.0,0.5),(0.0,0.5),(0.5,0.0)"
mas01mc@332 30 intstring 2 > testquery
mas01mc@332 31 floatstring 0 0.5 >> testquery
mas01mc@332 32 floatstring 0 0.5 >> testquery
mas01mc@332 33 floatstring 0.5 0 >> testquery
mas01mc@332 34
mas01mc@332 35 # LSH Indexing tests
mas01mc@332 36
mas01mc@332 37 # Indexing requires a radius (-R)
mas01mc@332 38 expect_clean_error_exit ${AUDIODB} -d testdb -X -l 1
mas01mc@332 39
mas01mc@332 40 # Index with default LSH params
mas01mc@332 41 ${AUDIODB} -d testdb -X -l 1 -R 1
mas01mc@332 42
mas01mc@332 43 WSPORT=10020
mas01mc@332 44 start_server ${AUDIODB} ${WSPORT}
mas01mc@332 45
mas01mc@332 46 # WS Query using the index
mas01mc@332 47
mas01mc@332 48 ${AUDIODB} -c localhost:${WSPORT} -d testdb -Q sequence -l 1 -f testquery -w testpower -R 1 > testoutput
mas01cr@333 49 echo testfeature 1 > test-expected-output
mas01mc@332 50 cmp testoutput test-expected-output
mas01mc@332 51
mas01mc@332 52 ${AUDIODB} -c localhost:${WSPORT} -d testdb -Q sequence -l 1 -f testquery -w testpower -p 0 -R 1 > testoutput
mas01cr@333 53 echo testfeature 1 > test-expected-output
mas01mc@332 54 cmp testoutput test-expected-output
mas01mc@332 55
mas01mc@332 56 ${AUDIODB} -c localhost:${WSPORT} -d testdb -Q sequence -l 1 -f testquery -w testpower -p 1 -R 1 > testoutput
mas01cr@333 57 echo testfeature 1 > test-expected-output
mas01mc@332 58 cmp testoutput test-expected-output
mas01mc@332 59
mas01mc@332 60 ${AUDIODB} -c localhost:${WSPORT} -d testdb -Q sequence -l 1 -f testquery -w testpower -e -R 1 > testoutput
mas01cr@333 61 echo testfeature 3 > test-expected-output
mas01mc@332 62 cmp testoutput test-expected-output
mas01mc@332 63
mas01mc@332 64 ${AUDIODB} -c localhost:${WSPORT} -d testdb -Q sequence -l 1 -f testquery -w testpower -e -R 1 --lsh_exact > testoutput
mas01cr@333 65 echo testfeature 3 > test-expected-output
mas01mc@332 66 cmp testoutput test-expected-output
mas01mc@332 67
mas01mc@332 68 # make index, sequenceLength=2
mas01mc@332 69 ${AUDIODB} -d testdb -X -l 2 -R 1
mas01mc@332 70
mas01mc@332 71 # query, sequenceLength=2
mas01mc@332 72 ${AUDIODB} -c localhost:${WSPORT} -d testdb -Q sequence -l 2 -f testquery -w testpower -p 0 -R 1 > testoutput
mas01cr@333 73 echo testfeature 1 > test-expected-output
mas01mc@332 74 cmp testoutput test-expected-output
mas01mc@332 75
mas01mc@332 76 ${AUDIODB} -c localhost:${WSPORT} -d testdb -Q sequence -l 2 -f testquery -w testpower -p 1 -R 1 > testoutput
mas01cr@333 77 echo testfeature 1 > test-expected-output
mas01mc@332 78 cmp testoutput test-expected-output
mas01mc@332 79
mas01mc@332 80 ${AUDIODB} -c localhost:${WSPORT} -d testdb -Q sequence -l 2 -f testquery -w testpower -p 0 -R 1 --lsh_exact > testoutput
mas01cr@333 81 echo testfeature 1 > test-expected-output
mas01mc@332 82 cmp testoutput test-expected-output
mas01mc@332 83
mas01mc@332 84 stop_server $!
mas01mc@332 85
mas01mc@332 86 exit 104