test auto-initializers

This commit is contained in:
2022-07-26 18:46:28 +02:00
parent 1954ce0ea4
commit 8bf0fb9885
18 changed files with 215 additions and 52 deletions

View File

@ -1,6 +1,10 @@
#include "AcceptsTmMock.h"
AcceptsTmMock::AcceptsTmMock(MessageQueueId_t queueToReturn) : returnedQueue(queueToReturn) {}
AcceptsTmMock::AcceptsTmMock(object_id_t registeredId, MessageQueueId_t queueToReturn)
: SystemObject(registeredId), returnedQueue(queueToReturn) {}
AcceptsTmMock::AcceptsTmMock(MessageQueueId_t queueToReturn)
: SystemObject(objects::NO_OBJECT, false), returnedQueue(queueToReturn) {}
MessageQueueId_t AcceptsTmMock::getReportReceptionQueue(uint8_t virtualChannel) {
return returnedQueue;

View File

@ -1,10 +1,12 @@
#ifndef FSFW_TESTS_ACCEPTSTMMOCK_H
#define FSFW_TESTS_ACCEPTSTMMOCK_H
#include "fsfw/objectmanager/SystemObject.h"
#include "fsfw/tmtcservices/AcceptsTelemetryIF.h"
class AcceptsTmMock : public AcceptsTelemetryIF {
class AcceptsTmMock : public SystemObject, public AcceptsTelemetryIF {
public:
AcceptsTmMock(object_id_t registeredId, MessageQueueId_t queueToReturn);
explicit AcceptsTmMock(MessageQueueId_t queueToReturn);
MessageQueueId_t getReportReceptionQueue(uint8_t virtualChannel) override;

View File

@ -10,4 +10,5 @@ target_sources(${FSFW_TEST_TGT} PRIVATE
PusVerificationReporterMock.cpp
PusServiceBaseMock.cpp
AcceptsTmMock.cpp
PusDistributorMock.cpp
)

View File

@ -8,7 +8,7 @@ DeviceHandlerMock::DeviceHandlerMock(object_id_t objectId, object_id_t deviceCom
mode = MODE_ON;
}
DeviceHandlerMock::~DeviceHandlerMock() {}
DeviceHandlerMock::~DeviceHandlerMock() = default;
void DeviceHandlerMock::doStartUp() { setMode(_MODE_TO_ON); }

View File

@ -0,0 +1,12 @@
#include "PusDistributorMock.h"
PusDistributorMock::PusDistributorMock() : SystemObject(objects::NO_OBJECT, false) {}
PusDistributorMock::PusDistributorMock(object_id_t registeredId)
: SystemObject(registeredId, true) {}
ReturnValue_t PusDistributorMock::registerService(AcceptsTelecommandsIF *service) {
registerCallCount++;
lastServiceArg = service;
return HasReturnvaluesIF::RETURN_OK;
}

View File

@ -0,0 +1,16 @@
#ifndef FSFW_TESTS_PUSDISTRIBUTORMOCK_H
#define FSFW_TESTS_PUSDISTRIBUTORMOCK_H
#include "fsfw/objectmanager/SystemObject.h"
#include "fsfw/tcdistribution/PUSDistributorIF.h"
class PusDistributorMock : public SystemObject, public PUSDistributorIF {
public:
PusDistributorMock();
explicit PusDistributorMock(object_id_t registeredId);
unsigned int registerCallCount = 0;
AcceptsTelecommandsIF* lastServiceArg = nullptr;
ReturnValue_t registerService(AcceptsTelecommandsIF* service) override;
};
#endif // FSFW_TESTS_PUSDISTRIBUTORMOCK_H

View File

@ -39,3 +39,15 @@ bool PsbMock::getAndPopNextSubservice(uint8_t& subservice) {
subserviceQueue.pop();
return true;
}
PsbParams& PsbMock::getParams() { return psbParams; }
void PsbMock::setStaticPusDistributor(object_id_t pusDistributor) {
PUS_DISTRIBUTOR = pusDistributor;
}
object_id_t PsbMock::getStaticPusDistributor() { return PUS_DISTRIBUTOR; }
void PsbMock::setStaticTmDest(object_id_t tmDest) { PACKET_DESTINATION = tmDest; }
object_id_t PsbMock::getStaticTmDest() { return PACKET_DESTINATION; }

View File

@ -12,6 +12,13 @@ class PsbMock : public PusServiceBase {
std::queue<uint8_t> subserviceQueue;
unsigned int performServiceCallCnt = 0;
static void setStaticPusDistributor(object_id_t pusDistributor);
static object_id_t getStaticPusDistributor();
static void setStaticTmDest(object_id_t tmDest);
static object_id_t getStaticTmDest();
PsbParams& getParams();
std::pair<bool, ReturnValue_t> handleReqFailPair;
std::pair<bool, ReturnValue_t> performServiceFailPair;
ReturnValue_t handleRequest(uint8_t subservice) override;