From e0c5ec7b994d1efdfa3414e9794295bda2e66eec Mon Sep 17 00:00:00 2001
From: athatheocsd <athatheo@csd.auth.gr>
Date: Tue, 11 Dec 2018 17:19:41 +0200
Subject: [PATCH] Tests for observables added and variable name mistakes fixed

---
 inc/Services/EventReportService.hpp  | 19 +++++--------------
 src/Services/EventReportService.cpp  |  4 +++-
 test/Services/EventReportService.cpp | 25 ++++++++++++++++++++++++-
 3 files changed, 32 insertions(+), 16 deletions(-)

diff --git a/inc/Services/EventReportService.hpp b/inc/Services/EventReportService.hpp
index f859dc53..24cb7ee7 100644
--- a/inc/Services/EventReportService.hpp
+++ b/inc/Services/EventReportService.hpp
@@ -21,7 +21,7 @@ private:
 	std::bitset<numberOfEvents> stateOfEvents;
 public:
 	// Variables that count the event reports per severity level
-	uint16_t lowSeverityReportsCount;
+	uint16_t lowSeverityReportCount;
 	uint16_t mediumSeverityReportCount;
 	uint16_t highSeverityReportCount;
 
@@ -39,16 +39,16 @@ public:
 	EventReportService() {
 		stateOfEvents.set();
 		serviceType = 5;
-		lowSeverityReportsCount = 0;
+		lowSeverityReportCount = 0;
 		mediumSeverityReportCount = 0;
 		highSeverityReportCount = 0;
 		disabledEventsCount = 0;
 		lowSeverityEventCount = 0;
 		mediumSeverityEventCount = 0;
 		highSeverityEventCount = 0;
-		lastLowSeverityReportID = -1;
-		lastMediumSeverityReportID = -1;
-		lastHighSeverityReportID = -1;
+		lastLowSeverityReportID = 65535;
+		lastMediumSeverityReportID = 65535;
+		lastHighSeverityReportID = 65535;
 	}
 
 	/**
@@ -171,15 +171,6 @@ public:
 	std::bitset<numberOfEvents> getStateOfEvents() {
 		return stateOfEvents;
 	}
-
-	/**
-	 * Getter for count of disabled events
-	 */
-	uint16_t getDisabledEventsCount() {
-		uint16_t numberOfDisabledEvents = stateOfEvents.size() - stateOfEvents.count();
-		return numberOfDisabledEvents;
-	}
-
 };
 
 #endif //ECSS_SERVICES_EVENTREPORTSERVICE_HPP
diff --git a/src/Services/EventReportService.cpp b/src/Services/EventReportService.cpp
index a75d35b0..7f0b7642 100644
--- a/src/Services/EventReportService.cpp
+++ b/src/Services/EventReportService.cpp
@@ -24,7 +24,7 @@ EventReportService::lowSeverityAnomalyReport(Event eventID, const uint8_t *data,
 	lowSeverityEventCount++;
 	// TM[5,2]
 	if (stateOfEvents[static_cast<uint16_t> (eventID)] == 1) {
-		lowSeverityReportsCount++;
+		lowSeverityReportCount++;
 		Message report = createTM(2);
 		report.appendEnum16(eventID);
 		report.appendString(length, data);
@@ -75,6 +75,7 @@ void EventReportService::enableReportGeneration(uint16_t length, Event *eventID)
 			stateOfEvents[static_cast<uint16_t> (eventID[i])] = 1;
 		}
 	}
+	disabledEventsCount = stateOfEvents.size() - stateOfEvents.count();
 }
 
 void EventReportService::disableReportGeneration(uint16_t length, Event *eventID) {
@@ -87,6 +88,7 @@ void EventReportService::disableReportGeneration(uint16_t length, Event *eventID
 			stateOfEvents[static_cast<uint16_t> (eventID[i])] = 0;
 		}
 	}
+	disabledEventsCount = stateOfEvents.size() - stateOfEvents.count();
 }
 
 void EventReportService::requestListOfDisabledEvents() {
diff --git a/test/Services/EventReportService.cpp b/test/Services/EventReportService.cpp
index d10458aa..5b70a2ee 100644
--- a/test/Services/EventReportService.cpp
+++ b/test/Services/EventReportService.cpp
@@ -144,5 +144,28 @@ TEST_CASE("List of Disabled Events Report TM[5,8]", "[service][st05]") {
 
 TEST_CASE("List of observables 6.5.6", "[service][st05]") {
 	EventReportService eventReportService;
+	EventReportService::Event eventID[] = {EventReportService::HighSeverityUnknownEvent};
+	eventReportService.disableReportGeneration(1, eventID);
 
-}
+	const unsigned char eventReportData[] = "HelloWorld";
+
+	eventReportService.highSeverityAnomalyReport(EventReportService::HighSeverityUnknownEvent,
+	                                             eventReportData,
+	                                             10);
+	eventReportService.mediumSeverityAnomalyReport(EventReportService::MediumSeverityUnknownEvent,
+		                                         eventReportData,
+		                                         10);
+	CHECK(eventReportService.lowSeverityReportCount == 0);
+	CHECK(eventReportService.mediumSeverityReportCount == 1);
+	CHECK(eventReportService.highSeverityReportCount == 0);
+
+	CHECK(eventReportService.lowSeverityEventCount == 0);
+	CHECK(eventReportService.mediumSeverityEventCount == 1);
+	CHECK(eventReportService.highSeverityEventCount == 1);
+
+	CHECK(eventReportService.disabledEventsCount == 1);
+
+	CHECK(eventReportService.lastLowSeverityReportID == 65535);
+	CHECK(eventReportService.lastMediumSeverityReportID == 5);
+	CHECK(eventReportService.lastHighSeverityReportID == 65535);
+}
\ No newline at end of file
-- 
GitLab