Przeglądaj źródła

Fix Endian Conversion tests

Signed-off-by: Martin Melik Merkumians <melik-merkumians@acin.tuwien.ac.at>
Martin Melik Merkumians 5 lat temu
rodzic
commit
ece0cfd350
1 zmienionych plików z 58 dodań i 55 usunięć
  1. 58 55
      source/tests/enet_encap/endianconvtest.cpp

+ 58 - 55
source/tests/enet_encap/endianconvtest.cpp

@@ -65,92 +65,95 @@ TEST(EndianConversion, GetLintFromMessage) {
 
 TEST(EndianConversion, AddIntToMessage) {
   CipUint value_to_add_to_message = 0x5499;
-  CipOctet message[2];
-  CipOctet *message_pointer = message;
+  ENIPMessage message;
+  InitializeENIPMessage(&message);
 
-  AddIntToMessage(value_to_add_to_message, &message_pointer);
+  AddIntToMessage(value_to_add_to_message, &message);
 
-  BYTES_EQUAL(0x99, message[0]);
-  BYTES_EQUAL(0x54, message[1]);
+  BYTES_EQUAL(0x99, message.message_buffer[0]);
+  BYTES_EQUAL(0x54, message.message_buffer[1]);
 
-  POINTERS_EQUAL(message + 2, message_pointer)
+  POINTERS_EQUAL(message.message_buffer + 2, message.current_message_position)
 }
 
 TEST(EndianConversion, AddDintToMessage) {
   CipUdint value_to_add_to_message = 0x25E0C459;
-  CipOctet message[4];
-  CipOctet *message_pointer = message;
+  ENIPMessage message;
+  InitializeENIPMessage(&message);
 
-  AddDintToMessage(value_to_add_to_message, &message_pointer);
+  AddDintToMessage(value_to_add_to_message, &message);
 
-  BYTES_EQUAL(0x59, message[0]);
-  BYTES_EQUAL(0xC4, message[1]);
-  BYTES_EQUAL(0xE0, message[2]);
-  BYTES_EQUAL(0x25, message[3]);
+  BYTES_EQUAL(0x59, message.message_buffer[0]);
+  BYTES_EQUAL(0xC4, message.message_buffer[1]);
+  BYTES_EQUAL(0xE0, message.message_buffer[2]);
+  BYTES_EQUAL(0x25, message.message_buffer[3]);
 
-  POINTERS_EQUAL(message + 4, message_pointer)
+  POINTERS_EQUAL(message.message_buffer + 4, message.current_message_position)
 }
 
 TEST(EndianConversion, AddLintToMessage) {
   CipLint value_to_add_to_message = 0x2D2AEF0B84095230;
-  CipOctet message[8];
-  CipOctet *message_pointer = message;
+  ENIPMessage message;
+  InitializeENIPMessage(&message);
 
-  AddLintToMessage(value_to_add_to_message, &message_pointer);
+  AddLintToMessage(value_to_add_to_message, &message);
 
   /* Expected message from highest to lowest byte [30][52][09][84][0B][EF][2A][2D] */
-  BYTES_EQUAL(0x2D, message[0]);
-  BYTES_EQUAL(0x2A, message[1]);
-  BYTES_EQUAL(0xEF, message[2]);
-  BYTES_EQUAL(0x0B, message[3]);
-  BYTES_EQUAL(0x84, message[4]);
-  BYTES_EQUAL(0x09, message[5]);
-  BYTES_EQUAL(0x52, message[6]);
-  BYTES_EQUAL(0x30, message[7]);
-
-  POINTERS_EQUAL(message + 8, message_pointer)
+  BYTES_EQUAL(0x2D, message.message_buffer[0]);
+  BYTES_EQUAL(0x2A, message.message_buffer[1]);
+  BYTES_EQUAL(0xEF, message.message_buffer[2]);
+  BYTES_EQUAL(0x0B, message.message_buffer[3]);
+  BYTES_EQUAL(0x84, message.message_buffer[4]);
+  BYTES_EQUAL(0x09, message.message_buffer[5]);
+  BYTES_EQUAL(0x52, message.message_buffer[6]);
+  BYTES_EQUAL(0x30, message.message_buffer[7]);
+
+  POINTERS_EQUAL(message.message_buffer + 8, message.current_message_position)
 }
 
 TEST(EndianConversion, EncapsulateIpAddress) {
-  CipOctet ip_message[8];
-  CipOctet *ip_message_ponter = ip_message;
+  ENIPMessage message;
+  InitializeENIPMessage(&message);
 
   DetermineEndianess();
 
-  EncapsulateIpAddress(0xAF12, 0x25E0C459, &ip_message_ponter);
+  EncapsulateIpAddress(0xAF12, 0x25E0C459, &message);
 
-  BYTES_EQUAL(AF_INET >> 8, ip_message[0]);
-  BYTES_EQUAL(AF_INET, ip_message[1]);
-  BYTES_EQUAL(0x12, ip_message[2]);
-  BYTES_EQUAL(0xAF, ip_message[3]);
-  BYTES_EQUAL(0x59, ip_message[4]);
-  BYTES_EQUAL(0xC4, ip_message[5]);
-  BYTES_EQUAL(0xE0, ip_message[6]);
-  BYTES_EQUAL(0x25, ip_message[7]);
+  BYTES_EQUAL(AF_INET >> 8, message.message_buffer[0]);
+  BYTES_EQUAL(AF_INET, message.message_buffer[1]);
+  BYTES_EQUAL(0x12, message.message_buffer[2]);
+  BYTES_EQUAL(0xAF, message.message_buffer[3]);
+  BYTES_EQUAL(0x59, message.message_buffer[4]);
+  BYTES_EQUAL(0xC4, message.message_buffer[5]);
+  BYTES_EQUAL(0xE0, message.message_buffer[6]);
+  BYTES_EQUAL(0x25, message.message_buffer[7]);
+
+  POINTERS_EQUAL(message.message_buffer + 8, message.current_message_position)
 }
 
 TEST(EndianConversion, MoveMessageNOctets) {
-  const CipOctet message[] = "This is a test message";
-  const CipOctet *message_runner = message;
+  ENIPMessage message;
+  InitializeENIPMessage(&message);
 
-  MoveMessageNOctets(4, &message_runner);
+  MoveMessageNOctets(4, &message);
 
-  POINTERS_EQUAL(message + 4, message_runner);
+  POINTERS_EQUAL(message.message_buffer + 4, message.current_message_position);
 }
 
 TEST(EndianConversion, FillNextNMEssageOctetsWith) {
-  CipOctet message[8];
-  CipOctet *message_runner = message;
-  memset(message, 15, 8);
-
-  FillNextNMessageOctetsWith(0, 8, &message_runner);
-  BYTES_EQUAL(0, message_runner[0]);
-  BYTES_EQUAL(0, message_runner[1]);
-  BYTES_EQUAL(0, message_runner[2]);
-  BYTES_EQUAL(0, message_runner[3]);
-  BYTES_EQUAL(0, message_runner[4]);
-  BYTES_EQUAL(0, message_runner[5]);
-  BYTES_EQUAL(0, message_runner[6]);
-  BYTES_EQUAL(0, message_runner[7]);
+  ENIPMessage message;
+  InitializeENIPMessage(&message);
+  memset(message.message_buffer, 15, 8);
+
+  FillNextNMessageOctetsWith(0, 8, &message);
+  BYTES_EQUAL(0, message.message_buffer[0]);
+  BYTES_EQUAL(0, message.message_buffer[1]);
+  BYTES_EQUAL(0, message.message_buffer[2]);
+  BYTES_EQUAL(0, message.message_buffer[3]);
+  BYTES_EQUAL(0, message.message_buffer[4]);
+  BYTES_EQUAL(0, message.message_buffer[5]);
+  BYTES_EQUAL(0, message.message_buffer[6]);
+  BYTES_EQUAL(0, message.message_buffer[7]);
+  POINTERS_EQUAL(message.message_buffer, message.current_message_position);
 
 }