From 0efd39d4ae5c7fb2b89d6b97410e2792b4cf3ab4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ond=C5=99ej=20Fischer?= Date: Tue, 8 Oct 2019 11:57:42 +0200 Subject: [PATCH] Finish unit test --- src/colnod/colnodapi.cpp | 6 +++++ src/colnod/colnodapi.h | 11 +++++++++ src/colnod/dataprocessor.cpp | 2 +- src/colnod/requestmanager.cpp | 3 +-- src/colnod/requestmanager.h | 2 +- test/unitTests/UnitTest.cpp | 43 +++++++++++++++-------------------- 6 files changed, 38 insertions(+), 29 deletions(-) create mode 100644 src/colnod/colnodapi.cpp create mode 100644 src/colnod/colnodapi.h diff --git a/src/colnod/colnodapi.cpp b/src/colnod/colnodapi.cpp new file mode 100644 index 0000000..8ac672d --- /dev/null +++ b/src/colnod/colnodapi.cpp @@ -0,0 +1,6 @@ +#include "colnodapi.h" + +ColnodAPI::ColnodAPI() +{ + +} diff --git a/src/colnod/colnodapi.h b/src/colnod/colnodapi.h new file mode 100644 index 0000000..9813294 --- /dev/null +++ b/src/colnod/colnodapi.h @@ -0,0 +1,11 @@ +#ifndef COLNODAPI_H +#define COLNODAPI_H + + +class ColnodAPI +{ +public: + ColnodAPI(); +}; + +#endif // COLNODAPI_H diff --git a/src/colnod/dataprocessor.cpp b/src/colnod/dataprocessor.cpp index 644bf8f..fadd754 100644 --- a/src/colnod/dataprocessor.cpp +++ b/src/colnod/dataprocessor.cpp @@ -4,7 +4,7 @@ DataProcessor::DataProcessor(Data *data) { db = new DatabaseManager("192.168.1.94", "deloitte", "postgres", "34rjkciea12"); - reqMan = new RequestManager(data); + reqMan = new RequestManager(); dataToProcess = data; } diff --git a/src/colnod/requestmanager.cpp b/src/colnod/requestmanager.cpp index b2d5354..a113172 100644 --- a/src/colnod/requestmanager.cpp +++ b/src/colnod/requestmanager.cpp @@ -1,11 +1,10 @@ #include "requestmanager.h" -RequestManager::RequestManager(Data *data) +RequestManager::RequestManager() { manager = new QNetworkAccessManager(); token = ""; loginStatus = false; //should be false, true for testing request header - this->data = data; /* QFile configFile(QDir::current().filePath("config.json")); if (!configFile.open(QIODevice::ReadOnly)) { diff --git a/src/colnod/requestmanager.h b/src/colnod/requestmanager.h index 2ce412d..22b954b 100644 --- a/src/colnod/requestmanager.h +++ b/src/colnod/requestmanager.h @@ -31,7 +31,7 @@ class RequestManager : public QObject Q_OBJECT public: - RequestManager(Data *data); + RequestManager(); void getSubjects(); void login(QString endpoint, QString username, QString password); void getRequest(QString endpoint); diff --git a/test/unitTests/UnitTest.cpp b/test/unitTests/UnitTest.cpp index 39ebb35..504d15e 100644 --- a/test/unitTests/UnitTest.cpp +++ b/test/unitTests/UnitTest.cpp @@ -2,8 +2,7 @@ void UnitTest::loginSuccessfully() { - Data *data = new Data(); - RequestManager* testAccess = new RequestManager(data); + RequestManager* testAccess = new RequestManager(); QJsonDocument config = testAccess->getConfig(); QSignalSpy spy(testAccess, SIGNAL(successLogin())); testAccess->login(host, email, password); @@ -19,8 +18,7 @@ void UnitTest::loginSuccessfully() //POST request w/o datas void UnitTest::getSubjects() { - Data *data = new Data(); - RequestManager* testAccess = new RequestManager(data); + RequestManager* testAccess = new RequestManager(); QSignalSpy spy(testAccess, SIGNAL(responseReady())); testAccess->getRequest("/SubjectManager/getSubjects"); spy.wait(); @@ -38,21 +36,25 @@ void UnitTest::getSubjects() void UnitTest::getTokens() { - Data *data = new Data(); - RequestManager* testAccess = new RequestManager(data); + RequestManager* testAccess = new RequestManager(); QSignalSpy spy(testAccess, SIGNAL(responseReady())); testAccess->getRequest("/TokenManager/getTokens"); QCOMPARE(spy.count(), 0); spy.wait(); QVERIFY(spy.isValid()); QCOMPARE(spy.count(), 1); - qDebug() << testAccess->getResponse(); + QString json = testAccess->getResponse(); + qDebug() << json; + QJsonDocument doc = QJsonDocument::fromJson(json.toUtf8()); + QVERIFY(doc.isObject()); + QVERIFY2(doc.object().value("items").isArray(), "No parameter 'id' in response"); + qDebug() << doc.object().value("items").toArray()[0].toObject()["id"].toString(); + QVERIFY2(doc.object().value("items").toArray()[0].toObject()["id"].isString(), "ada"); } void UnitTest::getTokensOpenManager() { - Data *data = new Data(); - RequestManager* testAccess = new RequestManager(data); + RequestManager* testAccess = new RequestManager(); QSignalSpy spy(testAccess, SIGNAL(responseReady())); testAccess->getRequest("/OpenManager/getTokenSubject"); QCOMPARE(spy.count(), 0); @@ -79,12 +81,8 @@ void UnitTest::subjectJSONParser() QJsonObject obj = doc.object(); QJsonArray arr = obj["items"].toArray(); */ - QVERIFY(true); - //return; - - Data *data = new Data(); - RequestManager* testAccess = new RequestManager(data); + RequestManager* testAccess = new RequestManager(); QSignalSpy spy(testAccess, SIGNAL(responseReady())); testAccess->getRequest("/SubjectManager/getSubjects"); spy.wait(); @@ -99,22 +97,17 @@ void UnitTest::subjectJSONParser() void UnitTest::tokenJSONParser() { - Data *data = new Data(); - RequestManager* testAccess = new RequestManager(data); + RequestManager* testAccess = new RequestManager(); QSignalSpy spy(testAccess, SIGNAL(responseReady())); testAccess->getRequest("/TokenManager/getTokens"); spy.wait(); QString response = testAccess->getResponse(); - - //TODO - /* QJsonDocument doc = QJsonDocument::fromJson(response.toUtf8()); + QJsonDocument doc = QJsonDocument::fromJson(response.toUtf8()); QJsonArray arr = doc.object()["items"].toArray(); - auto testSubject = new Subject(); - testSubject->fromJSON(arr[1].toObject()); - qDebug() << testSubject->getName(); - QVERIFY(!testSubject->getName().isEmpty());*/ - QVERIFY(true); - + auto testToken = new Token(); + testToken->fromJSON(arr[5].toObject()); + qDebug() << testToken->getName() << " Size: " << arr.size(); + QVERIFY(!testToken->getName().isEmpty()); } void UnitTest::connectToDB()