psb unittests almost complete
This commit is contained in:
parent
8bf0fb9885
commit
152c01b2ec
@ -5,6 +5,7 @@
|
|||||||
#include "fsfw/tmtcservices/PusVerificationReport.h"
|
#include "fsfw/tmtcservices/PusVerificationReport.h"
|
||||||
|
|
||||||
object_id_t VerificationReporter::DEFAULT_RECEIVER = objects::PUS_SERVICE_1_VERIFICATION;
|
object_id_t VerificationReporter::DEFAULT_RECEIVER = objects::PUS_SERVICE_1_VERIFICATION;
|
||||||
|
object_id_t VerificationReporter::DEFAULT_REPORTER = objects::TC_VERIFICATOR;
|
||||||
|
|
||||||
VerificationReporter::VerificationReporter(AcceptsVerifyMessageIF* receiver, object_id_t objectId)
|
VerificationReporter::VerificationReporter(AcceptsVerifyMessageIF* receiver, object_id_t objectId)
|
||||||
: SystemObject(objectId) {
|
: SystemObject(objectId) {
|
||||||
|
@ -8,6 +8,10 @@
|
|||||||
#include "fsfw/tmtcpacket/pus/tc/PusTcCreator.h"
|
#include "fsfw/tmtcpacket/pus/tc/PusTcCreator.h"
|
||||||
#include "fsfw/tmtcservices/AcceptsVerifyMessageIF.h"
|
#include "fsfw/tmtcservices/AcceptsVerifyMessageIF.h"
|
||||||
|
|
||||||
|
namespace Factory {
|
||||||
|
void setStaticFrameworkObjectIds();
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief This helper object is used to forward verification messages
|
* @brief This helper object is used to forward verification messages
|
||||||
* which are generated by the Flight Software Framework.
|
* which are generated by the Flight Software Framework.
|
||||||
@ -20,9 +24,11 @@
|
|||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
class VerificationReporter : public SystemObject, public VerificationReporterIF {
|
class VerificationReporter : public SystemObject, public VerificationReporterIF {
|
||||||
|
friend void Factory::setStaticFrameworkObjectIds();
|
||||||
|
|
||||||
public:
|
public:
|
||||||
explicit VerificationReporter(AcceptsVerifyMessageIF* receiver,
|
explicit VerificationReporter(AcceptsVerifyMessageIF* receiver,
|
||||||
object_id_t objectId = objects::TC_VERIFICATOR);
|
object_id_t objectId = DEFAULT_REPORTER);
|
||||||
~VerificationReporter() override;
|
~VerificationReporter() override;
|
||||||
|
|
||||||
void setReceiver(AcceptsVerifyMessageIF& receiver);
|
void setReceiver(AcceptsVerifyMessageIF& receiver);
|
||||||
@ -33,6 +39,7 @@ class VerificationReporter : public SystemObject, public VerificationReporterIF
|
|||||||
|
|
||||||
ReturnValue_t sendFailureReport(VerifFailureParams params) override;
|
ReturnValue_t sendFailureReport(VerifFailureParams params) override;
|
||||||
|
|
||||||
|
static object_id_t DEFAULT_REPORTER;
|
||||||
static object_id_t DEFAULT_RECEIVER;
|
static object_id_t DEFAULT_RECEIVER;
|
||||||
ReturnValue_t initialize() override;
|
ReturnValue_t initialize() override;
|
||||||
|
|
||||||
|
@ -1,5 +1,13 @@
|
|||||||
#include "PusVerificationReporterMock.h"
|
#include "PusVerificationReporterMock.h"
|
||||||
|
|
||||||
|
#include "fsfw/objectmanager/frameworkObjects.h"
|
||||||
|
|
||||||
|
PusVerificationReporterMock::PusVerificationReporterMock()
|
||||||
|
: SystemObject(objects::NO_OBJECT, false) {}
|
||||||
|
|
||||||
|
PusVerificationReporterMock::PusVerificationReporterMock(object_id_t registeredId)
|
||||||
|
: SystemObject(registeredId) {}
|
||||||
|
|
||||||
size_t PusVerificationReporterMock::successCallCount() const { return successParams.size(); }
|
size_t PusVerificationReporterMock::successCallCount() const { return successParams.size(); }
|
||||||
size_t PusVerificationReporterMock::failCallCount() const { return failParams.size(); }
|
size_t PusVerificationReporterMock::failCallCount() const { return failParams.size(); }
|
||||||
|
|
||||||
|
@ -3,13 +3,15 @@
|
|||||||
|
|
||||||
#include <queue>
|
#include <queue>
|
||||||
|
|
||||||
|
#include "fsfw/objectmanager/SystemObject.h"
|
||||||
#include "fsfw/tmtcservices/VerificationReporterIF.h"
|
#include "fsfw/tmtcservices/VerificationReporterIF.h"
|
||||||
|
|
||||||
class PusVerificationReporterMock : public VerificationReporterIF {
|
class PusVerificationReporterMock : public SystemObject, public VerificationReporterIF {
|
||||||
public:
|
public:
|
||||||
std::queue<VerifSuccessParams> successParams;
|
std::queue<VerifSuccessParams> successParams;
|
||||||
std::queue<VerifFailureParams> failParams;
|
std::queue<VerifFailureParams> failParams;
|
||||||
|
PusVerificationReporterMock();
|
||||||
|
explicit PusVerificationReporterMock(object_id_t registeredId);
|
||||||
[[nodiscard]] size_t successCallCount() const;
|
[[nodiscard]] size_t successCallCount() const;
|
||||||
VerifSuccessParams& getNextSuccessCallParams();
|
VerifSuccessParams& getNextSuccessCallParams();
|
||||||
void popNextSuccessParams();
|
void popNextSuccessParams();
|
||||||
|
@ -161,6 +161,15 @@ TEST_CASE("Pus Service Base", "[pus-service-base]") {
|
|||||||
REQUIRE(sendHelper.getDefaultDestination() == msgQueue.getDefaultDestination());
|
REQUIRE(sendHelper.getDefaultDestination() == msgQueue.getDefaultDestination());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
SECTION("TM Store And Send Helper Initializer") {
|
||||||
|
TmStoreHelper storeHelper(0);
|
||||||
|
TmSendHelper sendHelper;
|
||||||
|
psb.initializeTmHelpers(sendHelper, storeHelper);
|
||||||
|
REQUIRE(sendHelper.getMsgQueue() == &msgQueue);
|
||||||
|
REQUIRE(sendHelper.getDefaultDestination() == msgQueue.getDefaultDestination());
|
||||||
|
REQUIRE(storeHelper.getApid() == apid);
|
||||||
|
}
|
||||||
|
|
||||||
SECTION("TM Send Helper Initializer With Error Reporter") {
|
SECTION("TM Send Helper Initializer With Error Reporter") {
|
||||||
TmSendHelper sendHelper;
|
TmSendHelper sendHelper;
|
||||||
auto errReporter = InternalErrorReporterMock();
|
auto errReporter = InternalErrorReporterMock();
|
||||||
@ -195,4 +204,19 @@ TEST_CASE("Pus Service Base", "[pus-service-base]") {
|
|||||||
auto& p = psb2.getParams();
|
auto& p = psb2.getParams();
|
||||||
REQUIRE(p.tmReceiver == &packetDest);
|
REQUIRE(p.tmReceiver == &packetDest);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
SECTION("Auto Initialize Verification Reporter") {
|
||||||
|
psbParams.verifReporter = nullptr;
|
||||||
|
psbParams.objectId = 1;
|
||||||
|
object_id_t reporterId = objects::TC_VERIFICATOR;
|
||||||
|
PusVerificationReporterMock otherReporter(reporterId);
|
||||||
|
auto psb2 = PsbMock(psbParams);
|
||||||
|
REQUIRE(psb2.initialize() == retval::OK);
|
||||||
|
auto& p = psb2.getParams();
|
||||||
|
REQUIRE(p.verifReporter == &otherReporter);
|
||||||
|
}
|
||||||
|
|
||||||
|
SECTION("Auto Initialize TC Pool") {}
|
||||||
|
|
||||||
|
SECTION("Invalid Verification Reporter") {}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user