view 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
line wrap: on
line source
#! /bin/bash

. ../test-utils.sh

if [ -f testdb ]; then rm -f testdb; fi

start_server ${AUDIODB} 10015

${AUDIODB} -d testdb -N

${AUDIODB} -c localhost:10015 -d testdb -S > test1
${AUDIODB} -S -c localhost:10015 -d testdb > test2
${AUDIODB} -S -d testdb -c localhost:10015 > test3

cat > testoutput <<EOF
numFiles = 0
dim = 0
length = 0
dudCount = 0
nullCount = 0
flags = 0
EOF

cmp test1 test2
cmp test2 test3
cmp test3 testoutput

check_server $!

expect_client_failure ${AUDIODB} -c localhost:10015 -S -d /dev/null
expect_client_failure ${AUDIODB} -c localhost:10015 -S -d /tmp/foo-does-not-exist

check_server $!

stop_server $!

exit 104