colnod-connector/test/auto/syncmanager/tst_syncmanager.cpp

48 lines
1.3 KiB
C++

#include <QtTest>
#include "syncmanager.h"
// add necessary includes here
class SyncManagerTest : public QObject
{
Q_OBJECT
private slots:
void sync_init_test();
void prepareData_test();
};
void SyncManagerTest::sync_init_test()
{
SyncManager sync(true);
QVERIFY(sync.databaseInitialization());
}
void SyncManagerTest::prepareData_test()
{
SyncManager sync(true);
auto dbData = std::make_shared<Data>();
auto colnodData = std::make_shared<Data>();
auto token = std::make_shared<Token>();
token->setId("id1");
dbData->updatedTokens.insert("id1", token);
auto oldPreparedData = sync.prepareDataUsindOld(dbData, colnodData);
auto newPreparedData = sync.prepareDataNew(dbData, colnodData);
QVERIFY(oldPreparedData->databaseData->updatedTokens.contains("id1"));
QVERIFY(newPreparedData->databaseData->updatedTokens.contains("id1"));
QVERIFY(oldPreparedData->databaseData->updatedSubjects.isEmpty());
QVERIFY(newPreparedData->databaseData->updatedSubjects.isEmpty());
QVERIFY(oldPreparedData->databaseData->deletedTokens.isEmpty());
QVERIFY(newPreparedData->databaseData->deletedTokens.isEmpty());
QVERIFY(oldPreparedData->databaseData->deletedSubjects.isEmpty());
QVERIFY(newPreparedData->databaseData->deletedSubjects.isEmpty());
}
QTEST_MAIN(SyncManagerTest)
#include "tst_syncmanager.moc"