From 4c6fe67f916e00753cfcf63c50ee0c263d837ede Mon Sep 17 00:00:00 2001
From: Konstantinos Kapoglis <kostaskapogl@gmail.com>
Date: Wed, 14 Sep 2022 15:21:52 +0000
Subject: [PATCH] Change packet length calculation and tests

---
 src/MessageParser.cpp       | 2 +-
 test/MessageParserTests.cpp | 4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/src/MessageParser.cpp b/src/MessageParser.cpp
index e7d9544a..fe5931c8 100644
--- a/src/MessageParser.cpp
+++ b/src/MessageParser.cpp
@@ -213,7 +213,7 @@ String<CCSDSMaxMessageSize> MessageParser::compose(const Message& message) {
 	packetId |= (1U << 11U);                                              // Secondary header flag
 	packetId |= (message.packetType == Message::TC) ? (1U << 12U) : (0U); // Ignore-MISRA
 	uint16_t packetSequenceControl = message.packetSequenceCount | (3U << 14U);
-	uint16_t packetDataLength = ecssMessage.size();
+	uint16_t packetDataLength = ecssMessage.size() - 1;
 
 	// Compile the header
 	header[0] = packetId >> 8U;
diff --git a/test/MessageParserTests.cpp b/test/MessageParserTests.cpp
index 9d8eb910..4ec0f8ff 100644
--- a/test/MessageParserTests.cpp
+++ b/test/MessageParserTests.cpp
@@ -19,7 +19,7 @@ TEST_CASE("TC message parsing", "[MessageParser]") {
 }
 
 TEST_CASE("TC Message parsing into a string", "[MessageParser]") {
-	uint8_t wantedPacket[] = {0x18, 0x07, 0xe0, 0x07, 0x00, 0x0a, 0x20, 0x81,
+	uint8_t wantedPacket[] = {0x18, 0x07, 0xe0, 0x07, 0x00, 0x09, 0x20, 0x81,
 	                          0x1f, 0x00, 0x07, 0x68, 0x65, 0x6c, 0x6c, 0x6f};
 
 	Message message;
@@ -75,7 +75,7 @@ TEST_CASE("TM message parsing", "[MessageParser]") {
 }
 
 TEST_CASE("TM Message parsing into a string", "[MessageParser]") {
-	uint8_t wantedPacket[] = {0x08, 0x02, 0xc0, 0x4d, 0x00, 0x12, 0x20, 0x16,
+	uint8_t wantedPacket[] = {0x08, 0x02, 0xc0, 0x4d, 0x00, 0x11, 0x20, 0x16,
 	                          0x11,0x00, 0x00,0x00, 0x02,0x00, 0x00,0x00,
 	                          0x00, 0x68,0x65, 0x6c, 0x6c, 0x6f, 0x68, 0x69};
 	//save time
-- 
GitLab