view tests/0004/run-test.sh @ 53:944f05e65a58

Fix what is I think an off-by-one in query and sequence searching. When taking the mean of the N minimum distances, only consider those distances which are closer than the infinite/uninitialized distance. (This renders us potentially vulnerable to an internal consistency horror where we end up trying to divide by zero. This is unlikely to be picked up by unit tests, but might well be by random tests if this is in fact a problem.)
author mas01cr
date Thu, 20 Sep 2007 08:50:35 +0000
parents a7aad4c50cb9
children cee75159c0bc
line wrap: on
line source
#! /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

${AUDIODB} -d testdb -I -f testfeature

echo "query point (0.0,0.5)"
intstring 2 > testquery
floatstring 0 0.5 >> testquery

${AUDIODB} -d testdb -Q point -f testquery > testoutput
wc -l testoutput | grep 2
${AUDIODB} -d testdb -Q point -f testquery -n 1 > testoutput
wc -l testoutput | grep 1

echo "query point (0.5,0.0)"
intstring 2 > testquery
floatstring 0.5 0 >> testquery

${AUDIODB} -d testdb -Q point -f testquery > testoutput
wc -l testoutput | grep 2
${AUDIODB} -d testdb -Q point -f testquery -n 1 > testoutput
wc -l testoutput | grep 1

exit 104