Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/desktop.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKlaas Freitag <freitag@owncloud.com>2014-10-21 13:25:44 +0400
committerKlaas Freitag <freitag@owncloud.com>2014-10-21 13:26:04 +0400
commit21c8e65d13492136035f29fe969ea7d9f916f16a (patch)
tree4fc13b2b03e84809f1a757ee27650a77160d87a9
parent86d8079739b85164bbd0b48c1385f000aa87bb9c (diff)
csync tests: Fix test after db changes.v1.7.0-beta4
-rw-r--r--csync/tests/csync_tests/check_csync_update.c89
1 files changed, 67 insertions, 22 deletions
diff --git a/csync/tests/csync_tests/check_csync_update.c b/csync/tests/csync_tests/check_csync_update.c
index 6e6fddf27..2b76911c4 100644
--- a/csync/tests/csync_tests/check_csync_update.c
+++ b/csync/tests/csync_tests/check_csync_update.c
@@ -23,11 +23,64 @@
#define TESTDB "/tmp/check_csync/journal.db"
+static int firstrun = 1;
+
+static void statedb_create_metadata_table(sqlite3 *db)
+{
+ int rc = 0;
+
+ if( db ) {
+ const char *sql = "CREATE TABLE IF NOT EXISTS metadata("
+ "phash INTEGER(8),"
+ "pathlen INTEGER,"
+ "path VARCHAR(4096),"
+ "inode INTEGER,"
+ "uid INTEGER,"
+ "gid INTEGER,"
+ "mode INTEGER,"
+ "modtime INTEGER(8),"
+ "type INTEGER,"
+ "md5 VARCHAR(32),"
+ "PRIMARY KEY(phash));";
+
+ rc = sqlite3_exec(db, sql, NULL, NULL, NULL);
+ const char *msg = sqlite3_errmsg(db);
+ assert_int_equal( rc, SQLITE_OK );
+ }
+}
+
+static void statedb_insert_metadata(sqlite3 *db)
+{
+ int rc = 0;
+
+ if( db ) {
+ char *stmt = sqlite3_mprintf("INSERT INTO metadata"
+ "(phash, pathlen, path, inode, uid, gid, mode, modtime,type,md5) VALUES"
+ "(%lld, %d, '%q', %d, %d, %d, %d, %lld, %d, '%q');",
+ (long long signed int)42,
+ 42,
+ "I_was_wurst_before_I_became_wurstsalat",
+ 619070,
+ 42,
+ 42,
+ 42,
+ (long long signed int)42,
+ 0,
+ "4711");
+
+ char *errmsg;
+ rc = sqlite3_exec(db, stmt, NULL, NULL, &errmsg);
+ sqlite3_free(stmt);
+ assert_int_equal( rc, SQLITE_OK );
+ }
+}
+
static void setup(void **state)
{
CSYNC *csync;
int rc;
+ unlink(TESTDB);
rc = system("mkdir -p /tmp/check_csync");
assert_int_equal(rc, 0);
rc = system("mkdir -p /tmp/check_csync1");
@@ -38,10 +91,21 @@ static void setup(void **state)
assert_int_equal(rc, 0);
rc = csync_init(csync);
assert_int_equal(rc, 0);
+
+ /* Create a new db with metadata */
+ sqlite3 *db;
+ csync->statedb.file = c_strdup(TESTDB);
+ rc = sqlite3_open(csync->statedb.file, &db);
+ statedb_create_metadata_table(db);
+ if( firstrun ) {
+ statedb_insert_metadata(db);
+ firstrun = 0;
+ }
+ sqlite3_close(db);
+
rc = csync_statedb_load(csync, TESTDB, &csync->statedb.db);
assert_int_equal(rc, 0);
-
*state = csync;
}
@@ -71,6 +135,7 @@ static void teardown(void **state)
CSYNC *csync = *state;
int rc;
+ unlink( csync->statedb.file);
rc = csync_destroy(csync);
assert_int_equal(rc, 0);
@@ -249,6 +314,7 @@ static void check_csync_detect_update_db_eval(void **state)
csync_vio_file_stat_destroy(fs);
}
+
static void check_csync_detect_update_db_rename(void **state)
{
CSYNC *csync = *state;
@@ -256,27 +322,6 @@ static void check_csync_detect_update_db_rename(void **state)
csync_vio_file_stat_t *fs;
int rc = 0;
- char *stmt = NULL;
-
- // rc = csync_statedb_create_tables(csync->statedb.db);
-
- assert_int_equal(rc, 0);
- stmt = sqlite3_mprintf("INSERT INTO metadata"
- "(phash, pathlen, path, inode, uid, gid, mode, modtime,type,md5) VALUES"
- "(%lld, %d, '%q', %d, %d, %d, %d, %lld, %d, '%q');",
- (long long signed int)42,
- 42,
- "I_was_wurst_before_I_became_wurstsalat",
- 619070,
- 42,
- 42,
- 42,
- (long long signed int)42,
- 0,
- "4711");
-
- // rc = csync_statedb_insert(csync->statedb.db, stmt);
- sqlite3_free(stmt);
fs = create_fstat("wurst.txt", 0, 1, 42);
assert_non_null(fs);