annotate tests/0015/run-test.sh @ 459:fcc6f7c4856b api-inversion

No more global shingle vector of vectors. Convert audioDB::index_initialize_shingles and audioDB::index_norm_shingles to plain old functions. In doing so, the latter in particular acquires a silly argument list; we need that complexity for now because it's called both from audioDB::query (which we're currently inverting) and from audioDB::index (which is out of scope for now). The loss of the global vv thing made me check up on memory discipline [hence the new API function audiodb_query_free_results() as well as the internal audiodb_index_delete_shingles()]. It's not too bad, but there are plenty of leaks for those with time to do AUDIODB="valgrind --leak-check=full ../../audioDB" sh ./run-test.sh on their favourite test case. For example, the Radius reporters leak one triple per hit. (Honestly, C++ memory management is teh suck.)
author mas01cr
date Sun, 28 Dec 2008 22:43:50 +0000
parents 6066d75a6d39
children
rev   line source
mas01cr@90 1 #! /bin/bash
mas01cr@90 2
mas01cr@90 3 . ../test-utils.sh
mas01cr@90 4
mas01cr@90 5 if [ -f testdb ]; then rm -f testdb; fi
mas01cr@90 6
mas01cr@90 7 start_server ${AUDIODB} 10015
mas01cr@90 8
mas01cr@90 9 ${AUDIODB} -d testdb -N
mas01cr@90 10
mas01cr@90 11 ${AUDIODB} -c localhost:10015 -d testdb -S > test1
mas01cr@90 12 ${AUDIODB} -S -c localhost:10015 -d testdb > test2
mas01cr@90 13 ${AUDIODB} -S -d testdb -c localhost:10015 > test3
mas01cr@90 14
mas01cr@90 15 cat > testoutput <<EOF
mas01cr@90 16 numFiles = 0
mas01cr@90 17 dim = 0
mas01cr@90 18 length = 0
mas01cr@90 19 dudCount = 0
mas01cr@90 20 nullCount = 0
mas01cr@90 21 flags = 0
mas01cr@90 22 EOF
mas01cr@90 23
mas01cr@90 24 cmp test1 test2
mas01cr@90 25 cmp test2 test3
mas01cr@90 26 cmp test3 testoutput
mas01cr@90 27
mas01cr@90 28 check_server $!
mas01cr@90 29
mas01cr@95 30 expect_client_failure ${AUDIODB} -c localhost:10015 -S -d /dev/null
mas01cr@95 31 expect_client_failure ${AUDIODB} -c localhost:10015 -S -d /tmp/foo-does-not-exist
mas01cr@90 32
mas01cr@90 33 check_server $!
mas01cr@90 34
mas01cr@90 35 stop_server $!
mas01cr@90 36
mas01cr@90 37 exit 104