LCOV - code coverage report
Current view: top level - regression/issue_558 - mixed.c (source / functions) Hit Total Coverage
Test: coverage.info Lines: 18 22 81.8 %
Date: 2023-02-14 20:10:26 Functions: 1 1 100.0 %

          Line data    Source code
       1             : #include <pb_encode.h>
       2             : #include <pb_decode.h>
       3             : 
       4             : #include "mixed.pb.h"
       5             : #include "unittests.h"
       6             : 
       7           1 : int main()
       8             : {
       9           1 :     int status = 0;
      10             :     pb_byte_t buf[64];
      11             :     size_t msglen;
      12             : 
      13             :     {
      14           1 :         pb_ostream_t ostream = pb_ostream_from_buffer(buf, sizeof(buf));
      15           1 :         MixedMessage msg = MixedMessage_init_default;
      16             : 
      17           1 :         msg.has_proto2_value = true;
      18           1 :         msg.proto2_value = 0;
      19           1 :         msg.proto3_value = 0;
      20             :         
      21           1 :         if (!pb_encode(&ostream, MixedMessage_fields, &msg))
      22             :         {
      23           0 :             fprintf(stderr, "pb_encode() failed: %s\n", PB_GET_ERROR(&ostream));
      24           0 :             return 1;
      25             :         }
      26             : 
      27           1 :         msglen = ostream.bytes_written;
      28           1 :         TEST(msglen > 0);
      29             :     }
      30             : 
      31             :     {
      32           1 :         pb_istream_t istream = pb_istream_from_buffer(buf, msglen);
      33           1 :         MixedMessage msg = MixedMessage_init_default;
      34             :         
      35           1 :         TEST(msg.proto2_value == 100);
      36           1 :         TEST(msg.proto3_value == 200);
      37             : 
      38           1 :         if (!pb_decode(&istream, MixedMessage_fields, &msg))
      39             :         {
      40           0 :             fprintf(stderr, "pb_decode() failed: %s\n", PB_GET_ERROR(&istream));
      41           0 :             return 1;
      42             :         }
      43             : 
      44           1 :         TEST(msg.proto2_value == 0);
      45           1 :         TEST(msg.proto3_value == 0);
      46             :     }
      47             : 
      48           1 :     return status;
      49             : }

Generated by: LCOV version 1.14