AusweisApp2/test/helper/MockCardConnectionWorker.h

47 lines
1.3 KiB
C
Raw Normal View History

2019-01-03 15:06:22 +01:00
/*!
* \brief CardConnectionWorker mock for tests
*
2019-05-22 10:08:38 +02:00
* \copyright Copyright (c) 2018-2019 Governikus GmbH & Co. KG, Germany
2019-01-03 15:06:22 +01:00
*/
#pragma once
#include "CardConnectionWorker.h"
#include "MockReader.h"
#include <QByteArrayList>
namespace governikus
{
class MockCardConnectionWorker
: public CardConnectionWorker
{
Q_OBJECT
private:
QPointer<Reader> mReader;
QList<CardReturnCode> mResponseCodes;
QByteArrayList mResponseData;
QList<CardReturnCode> mPaceCodes;
public:
explicit MockCardConnectionWorker(Reader* pReader = new MockReader());
virtual ~MockCardConnectionWorker() override;
void addResponse(CardReturnCode pCode, const QByteArray& pData = QByteArray());
void addPaceCode(CardReturnCode pCode);
virtual CardReturnCode transmit(const CommandApdu& pCommandApdu, ResponseApdu& pResponseApdu) override;
virtual CardReturnCode updateRetryCounter() override;
2019-09-30 17:22:19 +02:00
virtual EstablishPaceChannelOutput establishPaceChannel(PacePasswordId pPasswordId,
2019-01-03 15:06:22 +01:00
const QString& pPasswordValue,
const QByteArray& pChat,
2019-09-30 17:22:19 +02:00
const QByteArray& pCertificateDescription) override;
2019-01-03 15:06:22 +01:00
virtual CardReturnCode destroyPaceChannel() override;
virtual CardReturnCode setEidPin(const QString& pNewPin, quint8 pTimeoutSeconds, ResponseApdu& pResponseApdu) override;
};
} // namespace governikus