AusweisApp2/test/helper/MockNetworkManager.h

84 lines
1.7 KiB
C
Raw Permalink Normal View History

2017-07-03 09:30:10 +02:00
/*!
* \brief Mock \ref NetworkManager for tests
*
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
*/
#pragma once
#include "MockNetworkReply.h"
#include "NetworkManager.h"
namespace governikus
{
class MockNetworkManager
: public NetworkManager
{
Q_OBJECT
private:
QString mFilename;
MockNetworkReply* mNextReply;
MockNetworkReply* mLastReply;
2017-12-20 14:54:05 +01:00
QNetworkRequest* mLastRequest;
2019-09-30 17:22:19 +02:00
QByteArray mLastData;
2017-07-03 09:30:10 +02:00
2017-07-03 09:33:28 +02:00
MockNetworkReply* getReply(const QNetworkRequest& pRequest);
2017-07-03 09:30:10 +02:00
public:
MockNetworkManager();
2017-12-20 14:54:05 +01:00
virtual ~MockNetworkManager() override;
2018-03-28 15:10:51 +02:00
virtual QNetworkReply* paos(QNetworkRequest& pRequest,
const QByteArray& pNamespace,
const QByteArray& pData,
bool pUsePsk = true,
const QByteArray& pSslSession = QByteArray(),
int pTimeoutInMilliSeconds = 30000) override;
virtual QNetworkReply* get(QNetworkRequest& pRequest,
const QByteArray& pSslSession = QByteArray(),
int pTimeoutInMilliSeconds = 30000) override;
2019-09-30 17:22:19 +02:00
virtual QNetworkReply* post(QNetworkRequest& pRequest,
const QByteArray& pData,
int pTimeoutInMilliSeconds = 30000) override;
2017-12-20 14:54:05 +01:00
virtual bool checkUpdateServerCertificate(const QNetworkReply& pReply) override;
2017-07-03 09:30:10 +02:00
void setFilename(const QString& pFilename)
{
mFilename = pFilename;
}
void setNextReply(MockNetworkReply* pNextReply)
{
mNextReply = pNextReply;
}
void fireFinished()
{
Q_ASSERT(mLastReply != nullptr);
mLastReply->fireFinished();
mLastReply = nullptr;
}
2017-12-20 14:54:05 +01:00
QNetworkRequest* getLastRequest() const
{
return mLastRequest;
}
2019-09-30 17:22:19 +02:00
const QByteArray getLastData() const
{
return mLastData;
}
2017-12-20 14:54:05 +01:00
Q_SIGNALS:
void fireReply();
2017-07-03 09:30:10 +02:00
};
2019-01-03 15:06:22 +01:00
} // namespace governikus