From a98311fbc807b83ecfc65a17f98464e5f1f9b3f8 Mon Sep 17 00:00:00 2001 From: Christian Mollekopf Date: Thu, 7 Sep 2017 02:34:10 +0200 Subject: Fixed getUids by type filtering. We used to simply return all uids. Requires "sinksh upgrade" --- tests/storagetest.cpp | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) (limited to 'tests') diff --git a/tests/storagetest.cpp b/tests/storagetest.cpp index 9e9bad9..3368549 100644 --- a/tests/storagetest.cpp +++ b/tests/storagetest.cpp @@ -542,6 +542,35 @@ private slots: } } + + void testRecordUid() + { + Sink::Storage::DataStore store(testDataPath, dbName, Sink::Storage::DataStore::ReadWrite); + auto transaction = store.createTransaction(Sink::Storage::DataStore::ReadWrite); + Sink::Storage::DataStore::recordUid(transaction, "uid1", "type"); + Sink::Storage::DataStore::recordUid(transaction, "uid2", "type"); + Sink::Storage::DataStore::recordUid(transaction, "uid3", "type2"); + + { + QVector uids; + Sink::Storage::DataStore::getUids("type", transaction, [&](const QByteArray &r) { + uids << r; + }); + QVector expected{{"uid1"}, {"uid2"}}; + QCOMPARE(uids, expected); + } + + Sink::Storage::DataStore::removeUid(transaction, "uid2", "type"); + + { + QVector uids; + Sink::Storage::DataStore::getUids("type", transaction, [&](const QByteArray &r) { + uids << r; + }); + QVector expected{{"uid1"}}; + QCOMPARE(uids, expected); + } + } }; QTEST_MAIN(StorageTest) -- cgit v1.2.3