Mercurial > hg > audiodb
view tests/0014/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 | fe4dc39b2dd7 |
children |
line wrap: on
line source
#! /bin/bash . ../test-utils.sh if [ -f testdb ]; then rm -f testdb; fi ${AUDIODB} -d testdb -N ${AUDIODB} -d testdb -L 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 start_server ${AUDIODB} 10014 ${AUDIODB} -c localhost:10014 -d testdb -Q point -f testquery > testoutput echo testfeature 0.5 0 0 > test-expected-output echo testfeature 0 0 1 >> test-expected-output cmp testoutput test-expected-output ${AUDIODB} -c localhost:10014 -d testdb -Q point -f testquery -n 1 > testoutput echo testfeature 0.5 0 0 > test-expected-output cmp testoutput test-expected-output check_server $! echo "query point (0.5,0.0)" intstring 2 > testquery floatstring 0.5 0 >> testquery ${AUDIODB} -c localhost:10014 -d testdb -Q point -f testquery > testoutput echo testfeature 0.5 0 1 > test-expected-output echo testfeature 0 0 0 >> test-expected-output cmp testoutput test-expected-output ${AUDIODB} -c localhost:10014 -d testdb -Q point -f testquery -n 1 > testoutput echo testfeature 0.5 0 1 > test-expected-output cmp testoutput test-expected-output stop_server $! exit 104