tests: update db test programme 61/130261/2
authorŁukasz Stelmach <l.stelmach@samsung.com>
Wed, 17 May 2017 13:25:07 +0000 (15:25 +0200)
committerKrzysztof Opasiak <k.opasiak@samsung.com>
Fri, 19 May 2017 16:29:47 +0000 (18:29 +0200)
Change-Id: I66d7dda70e037651f5edd299c3f108f684ab1021
Signed-off-by: Łukasz Stelmach <l.stelmach@samsung.com>
[Rebase onto current head]
Signed-off-by: Krzysztof Opasiak <k.opasiak@samsung.com>
tests/json.c

index 259d35f06406d4db72255515852e47e7a860dd2f..13e4c500de97aa52ea8c4dc9809517b6819a569c 100644 (file)
@@ -39,13 +39,22 @@ int main(int ac, char *av[])
 #endif
 
 #ifdef WITH_SQLITE
-       rc = sqlite3_open(":memory:", &sqlite);
+       rc = sqlite3_open("journal.sqlite", &sqlite);
        if (rc != 0) {
-               fprintf(stderr, "Can't open in-memory database: %s\n", sqlite3_errmsg(sqlite));
+               fprintf(stderr, "Can't open database: %s\n", sqlite3_errmsg(sqlite));
                sqlite3_close(sqlite);
                return -1;
        }
 
+       rc = sqlite3_exec(sqlite,
+                                         "DROP TABLE IF EXISTS journal"
+                                         ";", NULL, 0, &sqliteErr);
+       if (rc != SQLITE_OK) {
+               fprintf(stderr, "SQL Error: %s\n", sqlite3_errmsg(sqlite));
+               sqlite3_free(sqliteErr);
+               return -1;
+       }
+
        rc = sqlite3_exec(sqlite,
                                          "CREATE TABLE journal "
                                          "(key TEXT, value TEXT, event INTEGER)"
@@ -139,6 +148,14 @@ int main(int ac, char *av[])
                bson_init(&bsrec);
 #endif
 #ifdef WITH_SQLITE
+               rc = sqlite3_exec(sqlite,
+                                                 "BEGIN TRANSACTION"
+                                                 ";", NULL, 0, &sqliteErr);
+               if (rc != SQLITE_OK) {
+                       fprintf(stderr, "SQL Error: %s\n", sqlite3_errmsg(sqlite));
+                       sqlite3_free(sqliteErr);
+                       return -1;
+               }
                rc = sqlite3_step(sqlite_insert_event);
                if (rc != SQLITE_DONE) {
                        fprintf(stderr, "SQL Error: %s\n", sqlite3_errmsg(sqlite));
@@ -215,6 +232,15 @@ int main(int ac, char *av[])
 #endif
 #ifdef WITH_SQLITE
                sqlite3_reset(sqlite_insert_event);
+               rc = sqlite3_exec(sqlite,
+                                                 "COMMIT"
+                                                 ";", NULL, 0, &sqliteErr);
+               if (rc != SQLITE_OK) {
+                       fprintf(stderr, "SQL Error: %s\n", sqlite3_errmsg(sqlite));
+                       sqlite3_free(sqliteErr);
+                       return -1;
+               }
+
 #endif
                /* json_object_put(o); */
                i += tok->char_offset;
@@ -222,7 +248,7 @@ int main(int ac, char *av[])
        }
 
 #ifdef WITH_SQLITE
-       /* sqlite3_close(sqlite); */
+       sqlite3_close(sqlite);
 #endif
 
 #ifdef WITH_EJDB