annotate tests/0005/run-test.sh @ 402:58b88ab69424 api-inversion

Move the struct adb definition from the auidioDB_API.h into the audioDB-internals.h header file, leaving only the typedef behind. Thus a user of the API sees only an incomplete type, which cannot be instantiated (but /pointers/ to it can); there's then less temptation to break the abstraction barrier by using structure fields in client code. Not only that, but we can now safely put C++ stuff in the structure. Take advantage of this by putting a std::set<std::string> in there, to hold all the keys currently in the database; populate this field on audiodb_open() (and delete it on audiodb_close). This will be useful when we come to implement variants of audiodb_insert().
author mas01cr
date Wed, 03 Dec 2008 17:40:15 +0000
parents 584ae2c7d026
children
rev   line source
mas01cr@49 1 #! /bin/bash
mas01cr@49 2
mas01cr@49 3 . ../test-utils.sh
mas01cr@49 4
mas01cr@49 5 if [ -f testdb ]; then rm -f testdb; fi
mas01cr@49 6
mas01cr@49 7 ${AUDIODB} -d testdb -N
mas01cr@49 8
mas01cr@49 9 intstring 2 > testfeature
mas01cr@49 10 floatstring 0 1 >> testfeature
mas01cr@49 11 floatstring 1 0 >> testfeature
mas01cr@49 12
mas01cr@49 13 ${AUDIODB} -d testdb -I -f testfeature
mas01cr@49 14
mas01cr@49 15 echo running L2Norm
mas01cr@49 16
mas01cr@49 17 ${AUDIODB} -d testdb -L
mas01cr@49 18
mas01cr@68 19 exit 104