annotate libtests/0034/prog1.c @ 770:c54bc2ffbf92 tip

update tags
author convert-repo
date Fri, 16 Dec 2011 11:34:01 +0000
parents 342822c2d49a
children
rev   line source
mas01cr@498 1 #include "audioDB_API.h"
mas01cr@498 2 #include "test_utils_lib.h"
mas01ik@355 3
mas01cr@498 4 int main(int argc, char **argv) {
mas01cr@498 5 adb_t *adb;
mas01cr@498 6 adb_insert_t insert = {0};
mas01cr@498 7 adb_status_t status = {0};
mas01cr@498 8 adb_insert_t batch[4] = {{0},{0},{0},{0}};
mas01ik@355 9
mas01cr@498 10 clean_remove_db(TESTDB);
mas01cr@498 11 if(!(adb = audiodb_create(TESTDB, 0, 0, 0)))
mas01cr@498 12 return 1;
mas01ik@355 13
mas01cr@498 14 maketestfile("testfeature", 2, (double[2]) {1, 1}, 2);
mas01cr@498 15 maketestfile("testfeature01", 2, (double[2]) {0, 1}, 2);
mas01cr@498 16 maketestfile("testfeature10", 2, (double[2]) {1, 0}, 2);
mas01ik@355 17
mas01cr@498 18 insert.features = "testfeature";
mas01cr@498 19 if(audiodb_insert(adb, &insert))
mas01cr@498 20 return 1;
mas01cr@498 21 if(audiodb_status(adb, &status) || status.numFiles != 1)
mas01cr@498 22 return 1;
mas01cr@498 23
mas01cr@498 24 /* reinserts using audiodb_insert() should silently not fail and
mas01cr@498 25 * silently not insert, to support legacy command-line behaviour. */
mas01cr@498 26 if(audiodb_insert(adb, &insert))
mas01cr@498 27 return 1;
mas01cr@498 28 if(audiodb_status(adb, &status) || status.numFiles != 1)
mas01cr@498 29 return 1;
mas01ik@355 30
mas01cr@498 31 /* reinserts using audiodb_insert_datum() should fail. */
mas01cr@498 32 adb_datum_t datum = {1, 2, "testfeature", (double[2]) {1, 1}};
mas01cr@498 33 if(!audiodb_insert_datum(adb, &datum))
mas01cr@498 34 return 1;
mas01ik@355 35
mas01cr@498 36 insert.features = "testfeature01";
mas01cr@498 37 if(audiodb_insert(adb, &insert))
mas01cr@498 38 return 1;
mas01cr@498 39 if(audiodb_status(adb, &status) || status.numFiles != 2)
mas01cr@498 40 return 1;
mas01ik@355 41
mas01cr@498 42 insert.features = "testfeature10";
mas01cr@498 43 if(audiodb_insert(adb, &insert))
mas01cr@498 44 return 1;
mas01cr@498 45 if(audiodb_status(adb, &status) || status.numFiles != 3)
mas01cr@498 46 return 1;
mas01cr@498 47
mas01cr@498 48 audiodb_close(adb);
mas01ik@355 49
mas01cr@498 50 clean_remove_db(TESTDB);
mas01cr@498 51 if(!(adb = audiodb_create(TESTDB, 0, 0, 0)))
mas01cr@498 52 return 1;
mas01ik@355 53
mas01cr@498 54 batch[0].features = "testfeature";
mas01cr@498 55 batch[1].features = "testfeature01";
mas01cr@498 56 batch[2].features = "testfeature10";
mas01cr@498 57 batch[3].features = "testfeature10";
mas01cr@498 58 if(audiodb_batchinsert(adb, batch, 4))
mas01cr@498 59 return 1;
mas01cr@498 60 if(audiodb_status(adb, &status) || status.numFiles != 3)
mas01cr@498 61 return 1;
mas01ik@355 62
mas01cr@498 63 audiodb_close(adb);
mas01ik@355 64
mas01cr@498 65 return 104;
mas01ik@355 66 }