teststatus=0; \ progfailed=""; \ for prog in dbd testall; do \ if test "$prog" = 'dbd'; then \ for driver in none pgsql mysql sqlite3; do \ if test "$driver" != 'none'; then \ LD_LIBRARY_PATH="`echo "../crypto/.libs:../dbm/.libs:../dbd/.libs:../ldap/.libs:$LD_LIBRARY_PATH" | sed -e 's/::*$//'`" \ ./$prog $driver; \ status=$?; \ if test $status != 0; then \ teststatus=$status; \ progfailed="$progfailed '$prog $driver'"; \ fi; \ fi; \ done; \ else \ LD_LIBRARY_PATH="`echo "../crypto/.libs:../dbm/.libs:../dbd/.libs:../ldap/.libs:$LD_LIBRARY_PATH" | sed -e 's/::*$//'`" \ ./$prog; \ status=$?; \ if test $status != 0; then \ teststatus=$status; \ progfailed="$progfailed $prog"; \ fi; \ fi; \ done; \ if test $teststatus != 0; then \ echo "Programs failed:$progfailed"; \ fi; \ exit $teststatus Loaded pgsql driver OK. Failed to open pgsql[] Failed to load driver file apr_dbd_mysql.so Loaded sqlite3 driver OK. Opened sqlite3[] OK ======== create table ======== create table test successful ======== insert rows ======== insert rows test successful ======== invalid op ======== invalid op returned 1 (should be nonzero). Error msg follows 'no such table: apr_dbd_test1' valid op returned 0 (should be zero; error shouldn't affect subsequent ops) invalid op test successful ======== select random ======== ROW 5: wibble nothing 5 ROW 1: asdfgh bar 1 select random test successful ======== select sequential ======== ROW 1: asdfgh bar 1 ROW 2: bar foo (null) ROW 3: foo (null) (null) ROW 4: qwerty foo 0 ROW 5: wibble nothing 5 ROW 6: wibble other 5 select sequential test successful ======== transactions ======== Transaction 1 6 rows updated Valid insert returned 1. Should be nonzero (fail) because transaction is bad Transaction ended (should be rollback) - viewing table A column of "failed" indicates transaction failed (no rollback) ROW 1: asdfgh bar 1 ROW 2: bar foo (null) ROW 3: foo (null) (null) ROW 4: qwerty foo 0 ROW 5: wibble nothing 5 ROW 6: wibble other 5 Transaction 2 6 rows updated Valid insert returned 0. Should be zero (OK) Transaction ended (should be commit) - viewing table ROW 1: aaa zzz 3 ROW 2: asdfgh success 1 ROW 3: bar success (null) ROW 4: foo success (null) ROW 5: qwerty success 0 ROW 6: wibble success 5 ROW 7: wibble success 5 transactions test successful ======== prepared select ======== Selecting rows where col3 <= 3 and bar row where it's unset. Should show four rows. ROW 1: qwerty success 0 ROW 2: asdfgh success 1 ROW 3: bar success (null) ROW 4: aaa zzz 3 prepared select test successful ======== prepared query ======== Showing table (should now contain row "prepared insert 2") ROW 1: aaa zzz 3 ROW 2: asdfgh success 1 ROW 3: bar success (null) ROW 4: foo success (null) ROW 5: prepared insert 2 ROW 6: qwerty success 0 ROW 7: wibble success 5 ROW 8: wibble success 5 prepared query test successful ======== drop table ======== drop table test successful teststrmatch : SUCCESS testuri : SUCCESS testuuid : SUCCESS testbuckets : SUCCESS testpass : SUCCESS testmd4 : SUCCESS testmd5 : SUCCESS testcrypto : SUCCESS testldap : SUCCESS testdbd : SUCCESS testdate : SUCCESS testmemcache : SUCCESS testredis : SUCCESS testxml : SUCCESS testxlate : SUCCESS testrmm : SUCCESS testdbm : SUCCESS testqueue : SUCCESS testreslist : SUCCESS testsiphash : SUCCESS All tests passed. make[2]: Leaving directory '$(@D)/test'