annotate tests/0012/run-test.sh @ 108:bc141fd1dc41

New on-disk format! * new magic number: "o2db" rather than "O2DB". Check for the old one and give a helpful error message. (We could in principle handle the old databases transparently, but since only MC has actually used them and he has indicated that this is not desperately necessary...) * add fields to header: a file format version (currently 0; we have 2^32-1 revisions to make before we have to worry...) and fields for the offsets of the various tables. This is hopefully a little bit more futureproof: we can move the default locations of the tables around, and even adding new optional tables can be done easily in a fairly transparent manner (if the relevant header field is 0, don't use that feature). * align regions to the appropriate 32-word boundary. This gives us some space to breathe for in the header (admittedly only 15 words on 64-bit architectures...)
author mas01cr
date Fri, 05 Oct 2007 14:21:43 +0000
parents 48aaee766d8a
children fe4dc39b2dd7
rev   line source
mas01cr@83 1 #! /bin/sh
mas01cr@83 2
mas01cr@83 3 . ../test-utils.sh
mas01cr@83 4
mas01cr@83 5 if [ -f testdb ]; then rm -f testdb; fi
mas01cr@83 6
mas01cr@83 7 ${AUDIODB} -d testdb -N
mas01cr@83 8
mas01cr@83 9 intstring 2 > testfeature
mas01cr@83 10 floatstring 0 0.5 >> testfeature
mas01cr@83 11 floatstring 0.5 0 >> testfeature
mas01cr@83 12
mas01cr@83 13 # sequence queries require L2NORM; check that we can still insert
mas01cr@83 14 # after turning flag on
mas01cr@83 15 ${AUDIODB} -d testdb -L
mas01cr@83 16
mas01cr@83 17 ${AUDIODB} -d testdb -I -f testfeature
mas01cr@83 18
mas01cr@83 19 echo "query point (0.0,0.5)"
mas01cr@83 20 intstring 2 > testquery
mas01cr@83 21 floatstring 0 0.5 >> testquery
mas01cr@83 22
mas01cr@83 23 ${AUDIODB} -d testdb -Q sequence -l 1 -f testquery > testoutput
mas01cr@83 24 echo testfeature 1 0 0 > test-expected-output
mas01cr@83 25 cmp testoutput test-expected-output
mas01cr@83 26 ${AUDIODB} -d testdb -Q sequence -l 1 -f testquery -n 1 > testoutput
mas01cr@83 27 echo testfeature 0 0 0 > test-expected-output
mas01cr@83 28 cmp testoutput test-expected-output
mas01cr@83 29
mas01cr@83 30 echo "query point (0.5,0.0)"
mas01cr@83 31 intstring 2 > testquery
mas01cr@83 32 floatstring 0.5 0 >> testquery
mas01cr@83 33
mas01cr@83 34 ${AUDIODB} -d testdb -Q sequence -l 1 -f testquery > testoutput
mas01cr@83 35 echo testfeature 1 0 1 > test-expected-output
mas01cr@83 36 cmp testoutput test-expected-output
mas01cr@83 37 ${AUDIODB} -d testdb -Q sequence -l 1 -f testquery -n 1 > testoutput
mas01cr@83 38 echo testfeature 0 0 1 > test-expected-output
mas01cr@83 39 cmp testoutput test-expected-output
mas01cr@83 40
mas01cr@83 41 exit 104