diff options
author | Jocelyn Turcotte <jturcotte@woboq.com> | 2017-09-13 20:02:38 +0300 |
---|---|---|
committer | Olivier Goffart <olivier@woboq.com> | 2017-09-26 12:03:23 +0300 |
commit | 6f46764daa59460a4cbdc7327255a6dc4d631590 (patch) | |
tree | 48f83f647f7517d77f352ab5ce707a41c3d8d4d4 /test/testsyncjournaldb.cpp | |
parent | e1d482ea7cded147dbac5c799a81d13687d9db99 (diff) |
SyncJournalDB: Allow callers of getFileRecord if the query failed
The current implementation would return the same value whether the query failed
or if no row would be found. This is something that is currently checked by csync
and needs to be provided if we want to use SyncJournalDB there.
Adjusted all call sites to also check the return value even though they
could still just rely on rec.isValid(), but makes it more explicit as to what
happens for database errors in those cases, if we ever want to gracefully handle
them.
Diffstat (limited to 'test/testsyncjournaldb.cpp')
-rw-r--r-- | test/testsyncjournaldb.cpp | 20 |
1 files changed, 12 insertions, 8 deletions
diff --git a/test/testsyncjournaldb.cpp b/test/testsyncjournaldb.cpp index c7d8b85c3..5219dd8cf 100644 --- a/test/testsyncjournaldb.cpp +++ b/test/testsyncjournaldb.cpp @@ -45,7 +45,8 @@ private slots: void testFileRecord() { - SyncJournalFileRecord record = _db.getFileRecord("nonexistant"); + SyncJournalFileRecord record; + QVERIFY(_db.getFileRecord("nonexistant", &record)); QVERIFY(!record.isValid()); record._path = "foo"; @@ -59,13 +60,14 @@ private slots: record._checksumHeader = "MD5:mychecksum"; QVERIFY(_db.setFileRecord(record)); - SyncJournalFileRecord storedRecord = _db.getFileRecord("foo"); + SyncJournalFileRecord storedRecord; + QVERIFY(_db.getFileRecord("foo", &storedRecord)); QVERIFY(storedRecord == record); // Update checksum record._checksumHeader = "Adler32:newchecksum"; _db.updateFileRecordChecksum("foo", "newchecksum", "Adler32"); - storedRecord = _db.getFileRecord("foo"); + QVERIFY(_db.getFileRecord("foo", &storedRecord)); QVERIFY(storedRecord == record); // Update metadata @@ -77,11 +79,11 @@ private slots: record._remotePerm = RemotePermissions("NV"); record._fileSize = 289055; _db.setFileRecordMetadata(record); - storedRecord = _db.getFileRecord("foo"); + QVERIFY(_db.getFileRecord("foo", &storedRecord)); QVERIFY(storedRecord == record); QVERIFY(_db.deleteFileRecord("foo")); - record = _db.getFileRecord("foo"); + QVERIFY(_db.getFileRecord("foo", &record)); QVERIFY(!record.isValid()); } @@ -96,7 +98,8 @@ private slots: record._modtime = QDateTime::currentDateTimeUtc(); QVERIFY(_db.setFileRecord(record)); - SyncJournalFileRecord storedRecord = _db.getFileRecord("foo-checksum"); + SyncJournalFileRecord storedRecord; + QVERIFY(_db.getFileRecord("foo-checksum", &storedRecord)); QVERIFY(storedRecord._path == record._path); QVERIFY(storedRecord._remotePerm == record._remotePerm); QVERIFY(storedRecord._checksumHeader == record._checksumHeader); @@ -112,11 +115,12 @@ private slots: SyncJournalFileRecord record; record._path = "foo-nochecksum"; record._remotePerm = RemotePermissions("RWN"); - record._modtime = QDateTime::currentDateTimeUtc(); + record._modtime = QDateTime::currentDateTimeUtc(); QVERIFY(_db.setFileRecord(record)); - SyncJournalFileRecord storedRecord = _db.getFileRecord("foo-nochecksum"); + SyncJournalFileRecord storedRecord; + QVERIFY(_db.getFileRecord("foo-nochecksum", &storedRecord)); QVERIFY(storedRecord == record); } } |