AusweisApp2/test/helper/MockNetworkManager.cpp

108 lines
1.9 KiB
C++
Raw Normal View History

2017-07-03 09:30:10 +02:00
/*!
2019-05-22 10:08:38 +02:00
* \copyright Copyright (c) 2015-2019 Governikus GmbH & Co. KG, Germany
2017-07-03 09:30:10 +02:00
*/
#include "MockNetworkManager.h"
2019-01-03 15:06:22 +01:00
#include <http_parser.h>
2017-07-03 09:30:10 +02:00
#include <QTest>
using namespace governikus;
MockNetworkManager::MockNetworkManager()
: mNextReply(nullptr)
, mLastReply(nullptr)
2017-12-20 14:54:05 +01:00
, mLastRequest(nullptr)
2017-07-03 09:30:10 +02:00
{
}
MockNetworkManager::~MockNetworkManager()
{
}
2017-07-03 09:33:28 +02:00
MockNetworkReply* MockNetworkManager::getReply(const QNetworkRequest& pRequest)
2017-07-03 09:30:10 +02:00
{
if (mNextReply)
{
mLastReply = mNextReply;
mNextReply = nullptr;
}
else
{
QByteArray content;
if (!mFilename.isNull())
{
QFile msgFile(mFilename);
2017-12-20 14:54:05 +01:00
if (msgFile.open(QIODevice::ReadOnly | QIODevice::Text))
{
content = msgFile.readAll();
msgFile.close();
}
2017-07-03 09:30:10 +02:00
2019-01-03 15:06:22 +01:00
mLastReply = new MockNetworkReply(content, HTTP_STATUS_OK);
2017-12-20 14:54:05 +01:00
}
else
{
mLastReply = new MockNetworkReply();
}
2017-07-03 09:30:10 +02:00
}
2017-07-03 09:33:28 +02:00
mLastReply->setRequest(pRequest);
2017-12-20 14:54:05 +01:00
Q_EMIT fireReply();
2017-07-03 09:30:10 +02:00
return mLastReply;
}
2017-07-03 09:33:28 +02:00
2018-03-28 15:10:51 +02:00
QNetworkReply* MockNetworkManager::get(QNetworkRequest& pRequest,
const QByteArray& pSslSession,
int pTimeoutInMilliSeconds)
2017-07-03 09:33:28 +02:00
{
2019-09-30 17:22:19 +02:00
Q_UNUSED(pRequest)
Q_UNUSED(pSslSession)
Q_UNUSED(pTimeoutInMilliSeconds)
mLastRequest = &pRequest;
return getReply(pRequest);
}
QNetworkReply* MockNetworkManager::post(QNetworkRequest& pRequest, const QByteArray& pData, int pTimeoutInMilliSeconds)
{
2017-07-03 09:33:28 +02:00
Q_UNUSED(pTimeoutInMilliSeconds);
2017-12-20 14:54:05 +01:00
mLastRequest = &pRequest;
2019-09-30 17:22:19 +02:00
mLastData = QByteArray(pData);
2017-12-20 14:54:05 +01:00
2017-07-03 09:33:28 +02:00
return getReply(pRequest);
}
2018-03-28 15:10:51 +02:00
QNetworkReply* MockNetworkManager::paos(QNetworkRequest& pRequest,
const QByteArray& pNamespace,
const QByteArray& pData,
bool pUsePsk,
const QByteArray& pSslSession,
int pTimeoutInMilliSeconds)
2017-07-03 09:33:28 +02:00
{
2019-09-30 17:22:19 +02:00
Q_UNUSED(pRequest)
Q_UNUSED(pNamespace)
Q_UNUSED(pData)
Q_UNUSED(pUsePsk)
Q_UNUSED(pSslSession)
Q_UNUSED(pTimeoutInMilliSeconds)
2017-07-03 09:33:28 +02:00
return getReply(pRequest);
}
2017-12-20 14:54:05 +01:00
bool MockNetworkManager::checkUpdateServerCertificate(const QNetworkReply& pReply)
{
2019-09-30 17:22:19 +02:00
Q_UNUSED(pReply)
2017-12-20 14:54:05 +01:00
return true;
}