test/database.c

changeset 49
34c723ed7190
parent 48
deb6c4b8cf9d
child 51
e3163dc41a80
equal deleted inserted replaced
48:deb6c4b8cf9d 49:34c723ed7190
244 CX_TEST_ASSERT(!cx_strcmp(value, "bob")); 244 CX_TEST_ASSERT(!cx_strcmp(value, "bob"));
245 free(value.ptr); 245 free(value.ptr);
246 } 246 }
247 } 247 }
248 248
249 CX_TEST(testSqlExecParam) {
250 CX_TEST_DO {
251 CX_TEST_ASSERT(dbuSqlExec(conn, "PRAGMA foreign_keys = ON;") == 0);
252 CX_TEST_ASSERT(dbuSqlExec(conn,
253 "create table ExecTest3( "
254 "test1_id integer primary key autoincrement, "
255 "value int);") == 0);
256 CX_TEST_ASSERT(dbuSqlExec(conn,
257 "create table ExecTest4( "
258 "test2_id integer primary key autoincrement, "
259 "exectest1_id int references ExecTest3(test1_id), "
260 "value int);") == 0);
261 CX_TEST_ASSERT(dbuSqlExec(conn, "insert into ExecTest3(value) values (123);") == 0);
262
263 // fail test
264 CX_TEST_ASSERT(dbuSqlExec(conn, "insert into ExecTest4(exectest1_id, value) values (-999, 123);") != 0);
265 }
266 }
267
249 CX_TEST(testSingleTableQuery) { 268 CX_TEST(testSingleTableQuery) {
250 CxMempool *mp = cxMempoolCreateSimple(64); 269 CxMempool *mp = cxMempoolCreateSimple(64);
251 270
252 CX_TEST_DO { 271 CX_TEST_DO {
253 DBUQuery *query = dbuQueryCreate(conn, mp->allocator, "select * from address order by street;"); 272 DBUQuery *query = dbuQueryCreate(conn, mp->allocator, "select * from address order by street;");

mercurial