mirror of
https://gitlab.com/spaceti-app/integrations/common/server-sdk.git
synced 2026-07-12 11:50:42 +02:00
request manager: outputting error
This commit is contained in:
parent
9fc60947eb
commit
eddfc401b0
@ -144,3 +144,10 @@ QString Request::bearerAuthorization() const
|
|||||||
}
|
}
|
||||||
|
|
||||||
} // core
|
} // core
|
||||||
|
|
||||||
|
|
||||||
|
QDebug operator <<(QDebug dbg, serversdk::Request *request)
|
||||||
|
{
|
||||||
|
dbg.noquote() << request->type() << request->url() << "data:" << request->requestData() << "header:" << request->networkReply()->rawHeaderList();
|
||||||
|
return dbg.maybeSpace();
|
||||||
|
}
|
||||||
|
|||||||
@ -79,3 +79,4 @@ private:
|
|||||||
|
|
||||||
} // core
|
} // core
|
||||||
|
|
||||||
|
QDebug operator<<(QDebug dbg, serversdk::Request *request);
|
||||||
|
|||||||
@ -56,6 +56,8 @@ void RequestManager::processRequest(const std::shared_ptr<Request>& request)
|
|||||||
// Add to map to get correct request when reply is used in signal
|
// Add to map to get correct request when reply is used in signal
|
||||||
mRequestMap.insert(reply, request);
|
mRequestMap.insert(reply, request);
|
||||||
|
|
||||||
|
connect(reply, QOverload<QNetworkReply::NetworkError>::of(&QNetworkReply::error),
|
||||||
|
this, &RequestManager::replyError);
|
||||||
connect(reply, &QNetworkReply::downloadProgress, this, &RequestManager::downloadProgress);
|
connect(reply, &QNetworkReply::downloadProgress, this, &RequestManager::downloadProgress);
|
||||||
|
|
||||||
connect(reply, &QNetworkReply::finished, this, [=]() {
|
connect(reply, &QNetworkReply::finished, this, [=]() {
|
||||||
@ -119,6 +121,16 @@ void RequestManager::downloadProgress(qint64 bytesReceived, qint64 bytesTotal)
|
|||||||
emit progresss(bytesReceived, bytesTotal);
|
emit progresss(bytesReceived, bytesTotal);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void RequestManager::replyError(QNetworkReply::NetworkError code)
|
||||||
|
{
|
||||||
|
auto *reply = qobject_cast<QNetworkReply*>(sender());
|
||||||
|
Q_ASSERT(mRequestMap.contains(reply));
|
||||||
|
std::shared_ptr<Request> request = mRequestMap.value(reply);
|
||||||
|
|
||||||
|
|
||||||
|
qCWarning(sdknetwork) << request.get() << "reply error: " << code;
|
||||||
|
}
|
||||||
|
|
||||||
bool RequestManager::ignoreSsl() const
|
bool RequestManager::ignoreSsl() const
|
||||||
{
|
{
|
||||||
return mIgnoreSsl;
|
return mIgnoreSsl;
|
||||||
|
|||||||
@ -28,7 +28,7 @@ public:
|
|||||||
private:
|
private:
|
||||||
Q_SLOT void sslErrors(QNetworkReply *reply, const QList<QSslError> &sslErrors);
|
Q_SLOT void sslErrors(QNetworkReply *reply, const QList<QSslError> &sslErrors);
|
||||||
Q_SLOT void downloadProgress(qint64 bytesReceived, qint64 bytesTotal);
|
Q_SLOT void downloadProgress(qint64 bytesReceived, qint64 bytesTotal);
|
||||||
|
Q_SLOT void replyError(QNetworkReply::NetworkError code);
|
||||||
|
|
||||||
signals:
|
signals:
|
||||||
void downloadFinished(std::shared_ptr<Request> request);
|
void downloadFinished(std::shared_ptr<Request> request);
|
||||||
|
|||||||
@ -30,6 +30,8 @@ private:
|
|||||||
Q_SLOT void colnodAuthorization_test();
|
Q_SLOT void colnodAuthorization_test();
|
||||||
Q_SLOT void colnodGetUpdatedTokens_test();
|
Q_SLOT void colnodGetUpdatedTokens_test();
|
||||||
|
|
||||||
|
Q_SLOT void notConncetion_test();
|
||||||
|
|
||||||
std::shared_ptr<Request> colnodLoginRequest();
|
std::shared_ptr<Request> colnodLoginRequest();
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -102,7 +104,25 @@ void RequestManagerTest::colnodGetUpdatedTokens_test()
|
|||||||
QCOMPARE(tokensFinished.count(), 1 );
|
QCOMPARE(tokensFinished.count(), 1 );
|
||||||
|
|
||||||
QVERIFY(tokensRequest->status() == 200);
|
QVERIFY(tokensRequest->status() == 200);
|
||||||
qDebug() << tokensRequest->responseData();
|
//qDebug() << tokensRequest->responseData();
|
||||||
|
}
|
||||||
|
|
||||||
|
void RequestManagerTest::notConncetion_test()
|
||||||
|
{
|
||||||
|
serversdk::RequestManager reqMan;
|
||||||
|
reqMan.setIgnoreSsl(true);
|
||||||
|
|
||||||
|
auto tokensRequest = std::make_shared<serversdk::Request>("POST", "https://localhost:9999/TokenManager/getTokensUpdated", QByteArray("{}"));
|
||||||
|
//QTest::ignoreMessage(QtWarningMsg, QRegularExpression("POST.*error.*"));
|
||||||
|
reqMan.processRequest(tokensRequest);
|
||||||
|
QVERIFY(tokensRequest->networkReply());
|
||||||
|
|
||||||
|
QSignalSpy tokensFinished(tokensRequest.get(), &serversdk::Request::finished);
|
||||||
|
QVERIFY(tokensFinished.wait());
|
||||||
|
QCOMPARE(tokensFinished.count(), 1 );
|
||||||
|
|
||||||
|
QCOMPARE(tokensRequest->status(), 0);
|
||||||
|
//qDebug() << tokensRequest->responseData();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user