forked from ondra/colnod-connector
Merge branch 'refs/heads/master' into feat/unittest-colnod
# Conflicts: # server-sdk # src/colnod/syncmanager.cpp # test/auto/auto.pro
This commit is contained in:
commit
3bb6f24ae1
@ -12,13 +12,9 @@ DatabaseAPI::DatabaseAPI(serversdk::DatabaseManager *dbMan, bool dryMode)
|
|||||||
mDbMan->setDryMode(dryMode);
|
mDbMan->setDryMode(dryMode);
|
||||||
}
|
}
|
||||||
|
|
||||||
bool DatabaseAPI::open()
|
bool DatabaseAPI::open(QString host, QString name, QString user, QString password)
|
||||||
{
|
{
|
||||||
return mDbMan->openPostgres(QStringLiteral("192.168.1.94"),
|
return mDbMan->openPostgres(host, name, user, password);
|
||||||
QStringLiteral("deloitte"),
|
|
||||||
QStringLiteral("postgres"),
|
|
||||||
QStringLiteral("34rjkciea12"),
|
|
||||||
QStringLiteral("postgres-connection"));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
bool DatabaseAPI::executeQuery(QSqlQuery &query, const QString &statement)
|
bool DatabaseAPI::executeQuery(QSqlQuery &query, const QString &statement)
|
||||||
|
|||||||
@ -20,7 +20,10 @@ class DatabaseAPI : public QObject
|
|||||||
public:
|
public:
|
||||||
explicit DatabaseAPI(serversdk::DatabaseManager *dbMan, bool dryMode);
|
explicit DatabaseAPI(serversdk::DatabaseManager *dbMan, bool dryMode);
|
||||||
|
|
||||||
bool open();
|
bool open(QString host = "192.168.1.94",
|
||||||
|
QString name = "deloitte",
|
||||||
|
QString user = "postgres",
|
||||||
|
QString password = "34rjkciea12");
|
||||||
|
|
||||||
bool executeQuery(QSqlQuery &query, const QString &statement = QString());
|
bool executeQuery(QSqlQuery &query, const QString &statement = QString());
|
||||||
|
|
||||||
@ -58,8 +61,9 @@ signals:
|
|||||||
void error();
|
void error();
|
||||||
|
|
||||||
private:
|
private:
|
||||||
bool mDryMode;
|
|
||||||
bool mValid = true;
|
bool mValid = true;
|
||||||
|
|
||||||
|
bool mDryMode;
|
||||||
serversdk::DatabaseManager *mDbMan = nullptr;
|
serversdk::DatabaseManager *mDbMan = nullptr;
|
||||||
std::unique_ptr<serversdk::DatabaseUtils> utils;
|
std::unique_ptr<serversdk::DatabaseUtils> utils;
|
||||||
};
|
};
|
||||||
|
|||||||
@ -62,14 +62,20 @@ bool SyncManager::startSynchronization()
|
|||||||
// NOW I HAVE DATA FROM DATABASE
|
// NOW I HAVE DATA FROM DATABASE
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
colnod->downloadData(Timestamp(syncBegin));
|
colnod->downloadData(Timestamp(syncBegin));
|
||||||
connect(colnod.get(), &ColnodAPI::downloadDataFinished, [=](std::shared_ptr<Data> data) {
|
connect(colnod.get(), &ColnodAPI::downloadDataFinished, [=](std::shared_ptr<Data> data) {
|
||||||
// NOW I HAVE DATA FROM COLNOD
|
if (!data) {
|
||||||
|
qCritical(syncmanager) << "Not possible to get correct data from colnod";
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// NOW I HAVE DATA FROM COLNOD
|
||||||
// I can process data
|
// I can process data
|
||||||
qDebug(syncmanager) << "I have colnod and database data";
|
qDebug(syncmanager) << "I have colnod and database data";
|
||||||
qDebug(syncmanager) << "updated token count" << data->updatedTokens.count();
|
qDebug(syncmanager) << "updated token count" << data->updatedTokens.count();
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
|
|||||||
@ -3,3 +3,4 @@ TEMPLATE = subdirs
|
|||||||
SUBDIRS += \
|
SUBDIRS += \
|
||||||
database/tst_databaseapi.pro \
|
database/tst_databaseapi.pro \
|
||||||
colnod/tst_colnodapi.pro \
|
colnod/tst_colnodapi.pro \
|
||||||
|
syncmanager/tst_syncmanager.pro \
|
||||||
|
|||||||
@ -8,13 +8,19 @@ class DatabaseTest : public QObject
|
|||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
private slots:
|
private slots:
|
||||||
void open_database_test();
|
void open_database_test();
|
||||||
|
void open_database_ip_fail_test();
|
||||||
|
void open_database_name_fail_test();
|
||||||
|
void open_database_user_fail_test();
|
||||||
|
void open_database_password_fail_test();
|
||||||
|
void download_data_test();
|
||||||
|
void download_data_fail_test();
|
||||||
};
|
};
|
||||||
|
|
||||||
void DatabaseTest::open_database_test()
|
void DatabaseTest::open_database_test()
|
||||||
{
|
{
|
||||||
serversdk::DatabaseManager dbManager;
|
serversdk::DatabaseManager dbManager;
|
||||||
DatabaseAPI db(&dbManager, false);
|
DatabaseAPI db(&dbManager, false);
|
||||||
|
QVERIFY(db.open());
|
||||||
|
|
||||||
// TODO: fix -> databaseAPI must be able to add credentials to check for wrong one or test wrong IP
|
// TODO: fix -> databaseAPI must be able to add credentials to check for wrong one or test wrong IP
|
||||||
//db.open(user, password, url, etc );
|
//db.open(user, password, url, etc );
|
||||||
@ -23,6 +29,54 @@ void DatabaseTest::open_database_test()
|
|||||||
// QVERIFY(!db.open(worng ip));
|
// QVERIFY(!db.open(worng ip));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void DatabaseTest::open_database_ip_fail_test()
|
||||||
|
{
|
||||||
|
serversdk::DatabaseManager dbManager;
|
||||||
|
DatabaseAPI db(&dbManager, false);
|
||||||
|
QVERIFY(!db.open("1.1.1.1"));
|
||||||
|
}
|
||||||
|
|
||||||
|
void DatabaseTest::open_database_name_fail_test()
|
||||||
|
{
|
||||||
|
serversdk::DatabaseManager dbManager;
|
||||||
|
DatabaseAPI db(&dbManager, false);
|
||||||
|
QVERIFY(!db.open("192.168.1.94", "wrong name"));
|
||||||
|
}
|
||||||
|
|
||||||
|
void DatabaseTest::open_database_user_fail_test()
|
||||||
|
{
|
||||||
|
serversdk::DatabaseManager dbManager;
|
||||||
|
DatabaseAPI db(&dbManager, false);
|
||||||
|
QVERIFY(!db.open("192.168.1.94", "delliote", "wrong user"));
|
||||||
|
}
|
||||||
|
|
||||||
|
void DatabaseTest::open_database_password_fail_test()
|
||||||
|
{
|
||||||
|
serversdk::DatabaseManager dbManager;
|
||||||
|
DatabaseAPI db(&dbManager, false);
|
||||||
|
QVERIFY(!db.open("192.168.1.94", "delliote", "postgres", "wrong password"));
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void DatabaseTest::download_data_test()
|
||||||
|
{
|
||||||
|
serversdk::DatabaseManager dbManager;
|
||||||
|
DatabaseAPI db(&dbManager, false);
|
||||||
|
db.open();
|
||||||
|
QVERIFY(db.downloadData());
|
||||||
|
}
|
||||||
|
|
||||||
|
void DatabaseTest::download_data_fail_test()
|
||||||
|
{
|
||||||
|
serversdk::DatabaseManager dbManager;
|
||||||
|
DatabaseAPI db(&dbManager, false);
|
||||||
|
|
||||||
|
// fail open so download data should return nullptr
|
||||||
|
db.open("1.1.1.1");
|
||||||
|
QVERIFY(!db.downloadData());
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
QTEST_APPLESS_MAIN(DatabaseTest)
|
QTEST_APPLESS_MAIN(DatabaseTest)
|
||||||
|
|
||||||
#include "tst_databaseapi.moc"
|
#include "tst_databaseapi.moc"
|
||||||
|
|||||||
23
test/auto/syncmanager/tst_syncmanager.cpp
Normal file
23
test/auto/syncmanager/tst_syncmanager.cpp
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
#include <QtTest>
|
||||||
|
|
||||||
|
#include "syncmanager.h"
|
||||||
|
// add necessary includes here
|
||||||
|
|
||||||
|
class SyncManagerTest : public QObject
|
||||||
|
{
|
||||||
|
Q_OBJECT
|
||||||
|
private slots:
|
||||||
|
void sync_init_test();
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
void SyncManagerTest::sync_init_test()
|
||||||
|
{
|
||||||
|
SyncManager sync(true);
|
||||||
|
|
||||||
|
QVERIFY(sync.databaseInitialization());
|
||||||
|
}
|
||||||
|
|
||||||
|
QTEST_MAIN(SyncManagerTest)
|
||||||
|
|
||||||
|
#include "tst_syncmanager.moc"
|
||||||
11
test/auto/syncmanager/tst_syncmanager.pro
Normal file
11
test/auto/syncmanager/tst_syncmanager.pro
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
QT += testlib
|
||||||
|
QT -= gui
|
||||||
|
|
||||||
|
CONFIG += qt console warn_on depend_includepath testcase
|
||||||
|
CONFIG -= app_bundle
|
||||||
|
|
||||||
|
TEMPLATE = app
|
||||||
|
|
||||||
|
SOURCES += tst_syncmanager.cpp
|
||||||
|
|
||||||
|
include(../../test.pri)
|
||||||
Loading…
x
Reference in New Issue
Block a user