forked from ondra/colnod-connector
download data from colnod test
This commit is contained in:
parent
3709df6b6d
commit
818416504b
@ -14,7 +14,7 @@ ColnodAPI::ColnodAPI(serversdk::RequestManager* reqMan, const qint64 &lastSync,
|
|||||||
// -----------------------------------
|
// -----------------------------------
|
||||||
}
|
}
|
||||||
|
|
||||||
void ColnodAPI::downloadData()
|
void ColnodAPI::downloadData(const Timestamp &time)
|
||||||
{
|
{
|
||||||
// Have to get Login
|
// Have to get Login
|
||||||
auto login = requestLogin();
|
auto login = requestLogin();
|
||||||
@ -44,28 +44,28 @@ void ColnodAPI::downloadData()
|
|||||||
// if I have all data emit downloadDataFinished
|
// if I have all data emit downloadDataFinished
|
||||||
connect(this, &ColnodAPI::partOfDataReady, this, &ColnodAPI::areDataReady);
|
connect(this, &ColnodAPI::partOfDataReady, this, &ColnodAPI::areDataReady);
|
||||||
|
|
||||||
auto tokensRequest = getTokensUpdated(mLastSync);
|
auto tokensRequest = getTokensUpdated(time);
|
||||||
connect(tokensRequest.get(), &serversdk::Request::finished, errorHandler);
|
connect(tokensRequest.get(), &serversdk::Request::finished, errorHandler);
|
||||||
connect(tokensRequest.get(), &serversdk::Request::finished, [=](){
|
connect(tokensRequest.get(), &serversdk::Request::finished, [=](){
|
||||||
saveUpdatedTokens(data, tokensRequest->responseData());
|
saveUpdatedTokens(data, tokensRequest->responseData());
|
||||||
emit partOfDataReady(data);
|
emit partOfDataReady(data);
|
||||||
});
|
});
|
||||||
|
|
||||||
auto deletedTokensRequest = getTokensDeleted(mLastSync);
|
auto deletedTokensRequest = getTokensDeleted(time);
|
||||||
connect(deletedTokensRequest.get(), &serversdk::Request::finished, errorHandler);
|
connect(deletedTokensRequest.get(), &serversdk::Request::finished, errorHandler);
|
||||||
connect(deletedTokensRequest.get(), &serversdk::Request::finished, [=](){
|
connect(deletedTokensRequest.get(), &serversdk::Request::finished, [=](){
|
||||||
saveDeletedTokens(data, deletedTokensRequest->responseData());
|
saveDeletedTokens(data, deletedTokensRequest->responseData());
|
||||||
emit partOfDataReady(data);
|
emit partOfDataReady(data);
|
||||||
});
|
});
|
||||||
|
|
||||||
auto subjectsRequest = getSubjectsUpdated(mLastSync);
|
auto subjectsRequest = getSubjectsUpdated(time);
|
||||||
connect(subjectsRequest.get(), &serversdk::Request::finished, errorHandler);
|
connect(subjectsRequest.get(), &serversdk::Request::finished, errorHandler);
|
||||||
connect(subjectsRequest.get(), &serversdk::Request::finished, [=](){
|
connect(subjectsRequest.get(), &serversdk::Request::finished, [=](){
|
||||||
saveUpdatedSubjects(data, subjectsRequest->responseData());
|
saveUpdatedSubjects(data, subjectsRequest->responseData());
|
||||||
emit partOfDataReady(data);
|
emit partOfDataReady(data);
|
||||||
});
|
});
|
||||||
|
|
||||||
auto deletedSubjectsRequest = getSubjectsDeleted(mLastSync);
|
auto deletedSubjectsRequest = getSubjectsDeleted(time);
|
||||||
connect(deletedSubjectsRequest.get(), &serversdk::Request::finished, errorHandler);
|
connect(deletedSubjectsRequest.get(), &serversdk::Request::finished, errorHandler);
|
||||||
connect(deletedSubjectsRequest.get(), &serversdk::Request::finished, [=](){
|
connect(deletedSubjectsRequest.get(), &serversdk::Request::finished, [=](){
|
||||||
saveDeletedSubjects(data, deletedSubjectsRequest->responseData());
|
saveDeletedSubjects(data, deletedSubjectsRequest->responseData());
|
||||||
@ -263,7 +263,6 @@ void ColnodAPI::areDataReady(std::shared_ptr<Data> data)
|
|||||||
qInfo(colnod) << dash;
|
qInfo(colnod) << dash;
|
||||||
|
|
||||||
emit downloadDataFinished(data);
|
emit downloadDataFinished(data);
|
||||||
newData();
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -24,6 +24,10 @@ class Timestamp : public serversdk::DatabaseTable {
|
|||||||
TABLE_PROPERTY(qint64, timestamp, set_timestamp, 0)
|
TABLE_PROPERTY(qint64, timestamp, set_timestamp, 0)
|
||||||
public:
|
public:
|
||||||
Timestamp() = default;
|
Timestamp() = default;
|
||||||
|
Timestamp(const Timestamp &time)
|
||||||
|
{
|
||||||
|
this->set_timestamp(time.timestamp());
|
||||||
|
}
|
||||||
explicit Timestamp(qint64 time)
|
explicit Timestamp(qint64 time)
|
||||||
{
|
{
|
||||||
set_timestamp(time);
|
set_timestamp(time);
|
||||||
@ -46,7 +50,7 @@ public:
|
|||||||
ColnodAPI() = default;
|
ColnodAPI() = default;
|
||||||
ColnodAPI(serversdk::RequestManager* reqMan, const qint64 &lastSync = 0, const bool &dryMode = false, const QString &userName = "spaceti", const QString &password = "spaceti1");
|
ColnodAPI(serversdk::RequestManager* reqMan, const qint64 &lastSync = 0, const bool &dryMode = false, const QString &userName = "spaceti", const QString &password = "spaceti1");
|
||||||
|
|
||||||
void downloadData();
|
void downloadData(const Timestamp &time);
|
||||||
void processData(const std::shared_ptr<Data> &data);
|
void processData(const std::shared_ptr<Data> &data);
|
||||||
|
|
||||||
// New approach
|
// New approach
|
||||||
|
|||||||
@ -63,7 +63,7 @@ bool SyncManager::startSynchronization()
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
colnod->downloadData();
|
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
|
// NOW I HAVE DATA FROM COLNOD
|
||||||
|
|
||||||
@ -127,7 +127,7 @@ bool SyncManager::downloadData()
|
|||||||
connect(colnod.get(), &ColnodAPI::downloadDataFinished, this, &SyncManager::saveColnodData);
|
connect(colnod.get(), &ColnodAPI::downloadDataFinished, this, &SyncManager::saveColnodData);
|
||||||
//connect(database.get(), &DatabaseAPI::downloadDataFinished, this, &SyncManager::saveDatabaseData);
|
//connect(database.get(), &DatabaseAPI::downloadDataFinished, this, &SyncManager::saveDatabaseData);
|
||||||
//database->downloadData();
|
//database->downloadData();
|
||||||
colnod->downloadData();
|
//colnod->downloadData();
|
||||||
|
|
||||||
return res;
|
return res;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -9,6 +9,10 @@ class ColnodTest : public QObject
|
|||||||
private slots:
|
private slots:
|
||||||
void login();
|
void login();
|
||||||
void getTokens();
|
void getTokens();
|
||||||
|
void download_data_test();
|
||||||
|
|
||||||
|
private:
|
||||||
|
QString getLoginToken(ColnodAPI &colnod);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
@ -35,11 +39,33 @@ void ColnodTest::getTokens()
|
|||||||
auto login = colnod.requestLogin();
|
auto login = colnod.requestLogin();
|
||||||
QSignalSpy spy(login.get(), &serversdk::Request::finished);
|
QSignalSpy spy(login.get(), &serversdk::Request::finished);
|
||||||
spy.wait();
|
spy.wait();
|
||||||
QString token = login->responseData().mid(7,36);
|
QString token = getLoginToken(colnod);
|
||||||
Timestamp time(QDateTime::currentMSecsSinceEpoch());
|
Timestamp time(QDateTime::currentMSecsSinceEpoch());
|
||||||
colnod.getTokensUpdated(time);
|
colnod.getTokensUpdated(time);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void ColnodTest::download_data_test()
|
||||||
|
{
|
||||||
|
serversdk::RequestManager reqMan;
|
||||||
|
ColnodAPI colnod(&reqMan);
|
||||||
|
|
||||||
|
Timestamp time(QDateTime::currentMSecsSinceEpoch());
|
||||||
|
colnod.downloadData(time);
|
||||||
|
QSignalSpy spy(&colnod, &ColnodAPI::downloadDataFinished);
|
||||||
|
QVERIFY(spy.wait());
|
||||||
|
auto arguments = spy.takeFirst();
|
||||||
|
QVERIFY(arguments.first().data());
|
||||||
|
}
|
||||||
|
|
||||||
|
QString ColnodTest::getLoginToken(ColnodAPI &colnod)
|
||||||
|
{
|
||||||
|
auto login = colnod.requestLogin();
|
||||||
|
QSignalSpy spy(login.get(), &serversdk::Request::finished);
|
||||||
|
spy.wait();
|
||||||
|
return login->responseData().mid(7,36);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
QTEST_GUILESS_MAIN(ColnodTest)
|
QTEST_GUILESS_MAIN(ColnodTest)
|
||||||
|
|
||||||
#include "tst_colnodapi.moc"
|
#include "tst_colnodapi.moc"
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user