@@ -369,6 +369,23 @@ TEST(SerializationTest,Serialization1) {
369
369
#if DEBUG_VERBOSE
370
370
printf (" Val: in: %s out: %s stat1: %d stat2: %d\n " ,
371
371
boolt1 ? " TRUE" : " FALSE" , boolt2 ? " TRUE" : " FALSE" , stat1, stat2);
372
+ printf (" Pointer Test\n " );
373
+ #endif
374
+
375
+ U32 u32Var = 0 ;
376
+ void * ptrt1 = &u32Var;
377
+ void * ptrt2 = nullptr ;
378
+
379
+ buff.resetSer ();
380
+ stat1 = buff.serialize (ptrt1);
381
+ ASSERT_EQ (Fw::FW_SERIALIZE_OK,stat1);
382
+ stat2 = buff.deserialize (ptrt2);
383
+ ASSERT_EQ (Fw::FW_SERIALIZE_OK,stat2);
384
+ ASSERT_EQ (ptrt1,ptrt2);
385
+
386
+ #if DEBUG_VERBOSE
387
+ printf (" Val: in: %p out: %p stat1: %d stat2: %d\n " ,
388
+ ptrt1, ptrt2, stat1, stat2);
372
389
373
390
printf (" Skip deserialization Tests\n " );
374
391
#endif
@@ -422,6 +439,7 @@ TEST(SerializationTest,Serialization1) {
422
439
f32t2 = 0.0 ;
423
440
f64t2 = 0.0 ;
424
441
boolt2 = false ;
442
+ ptrt2 = nullptr ;
425
443
426
444
buff.resetSer ();
427
445
stat1 = buff.serialize (u8t1);
@@ -446,6 +464,8 @@ TEST(SerializationTest,Serialization1) {
446
464
ASSERT_EQ (Fw::FW_SERIALIZE_OK,stat1);
447
465
stat1 = buff.serialize (boolt1);
448
466
ASSERT_EQ (Fw::FW_SERIALIZE_OK,stat1);
467
+ stat1 = buff.serialize (ptrt1);
468
+ ASSERT_EQ (Fw::FW_SERIALIZE_OK,stat1);
449
469
450
470
// TKC - commented out due to fprime-util choking on output
451
471
// std::cout << "Buffer contents: " << buff << std::endl;
@@ -474,6 +494,8 @@ TEST(SerializationTest,Serialization1) {
474
494
ASSERT_EQ (Fw::FW_SERIALIZE_OK,stat1);
475
495
stat1 = buff2.serialize (boolt1);
476
496
ASSERT_EQ (Fw::FW_SERIALIZE_OK,stat1);
497
+ stat1 = buff2.serialize (ptrt1);
498
+ ASSERT_EQ (Fw::FW_SERIALIZE_OK,stat1);
477
499
478
500
ASSERT_EQ (buff,buff2);
479
501
@@ -512,6 +534,9 @@ TEST(SerializationTest,Serialization1) {
512
534
stat2 = buff.deserialize (boolt2);
513
535
ASSERT_EQ (Fw::FW_SERIALIZE_OK,stat2);
514
536
ASSERT_EQ (boolt1,boolt2);
537
+ stat2 = buff.deserialize (ptrt2);
538
+ ASSERT_EQ (Fw::FW_SERIALIZE_OK,stat2);
539
+ ASSERT_EQ (ptrt1,ptrt2);
515
540
516
541
// reset and deserialize again
517
542
#if DEBUG_VERBOSE
@@ -531,6 +556,7 @@ TEST(SerializationTest,Serialization1) {
531
556
f32t2 = 0.0 ;
532
557
f64t2 = 0.0 ;
533
558
boolt2 = false ;
559
+ ptrt2 = nullptr ;
534
560
535
561
stat2 = buff.deserialize (u8t2);
536
562
ASSERT_EQ (Fw::FW_SERIALIZE_OK,stat2);
@@ -565,6 +591,9 @@ TEST(SerializationTest,Serialization1) {
565
591
stat2 = buff.deserialize (boolt2);
566
592
ASSERT_EQ (Fw::FW_SERIALIZE_OK,stat2);
567
593
ASSERT_EQ (boolt1,boolt2);
594
+ stat2 = buff.deserialize (ptrt2);
595
+ ASSERT_EQ (Fw::FW_SERIALIZE_OK,stat2);
596
+ ASSERT_EQ (ptrt1,ptrt2);
568
597
569
598
// serialize string
570
599
Fw::String str1;
0 commit comments