75 IntSizes msg = IntSizes_init_zero;
78 TEST(
sizeof(msg.req_int8) == 1);
79 TEST(
sizeof(msg.req_uint8) == 1);
80 TEST(
sizeof(msg.req_sint8) == 1);
81 TEST(
sizeof(msg.req_int16) == 2);
82 TEST(
sizeof(msg.req_uint16) == 2);
83 TEST(
sizeof(msg.req_sint16) == 2);
84 TEST(
sizeof(msg.req_int32) == 4);
85 TEST(
sizeof(msg.req_uint32) == 4);
86 TEST(
sizeof(msg.req_sint32) == 4);
87 TEST(
sizeof(msg.req_int64) == 8);
88 TEST(
sizeof(msg.req_uint64) == 8);
89 TEST(
sizeof(msg.req_sint64) == 8);
92 COMMENT(
"Test roundtrip at maximum value");
95 INT32_MAX, UINT32_MAX, INT32_MAX,
96 INT64_MAX, UINT64_MAX, INT64_MAX,
true);
98 COMMENT(
"Test roundtrip at minimum value");
101 INT32_MIN, 0, INT32_MIN,
102 INT64_MIN, 0, INT64_MIN,
true);
104 COMMENT(
"Test overflow detection");
107 INT32_MIN, 0, INT32_MIN,
108 INT64_MIN, 0, INT64_MIN,
false);
111 INT32_MAX, UINT32_MAX, INT32_MAX,
112 INT64_MAX, UINT64_MAX, INT64_MAX,
false);
115 INT32_MIN, 0, INT32_MIN,
116 INT64_MIN, 0, INT64_MIN,
false);
120 IntSizes msg = IntSizes_init_zero;
123 COMMENT(
"Test message maximum size");
126 msg.req_sint8 = -128;
127 msg.req_int16 = -32768;
128 msg.req_uint16 = 65535;
129 msg.req_sint16 = -32768;
130 msg.req_int32 = INT32_MIN;
131 msg.req_uint32 = UINT32_MAX;
132 msg.req_sint32 = INT32_MIN;
133 msg.req_int64 = INT64_MIN;
134 msg.req_uint64 = UINT64_MAX;
135 msg.req_sint64 = INT64_MIN;
138 TEST(s.bytes_written == IntSizes_size);
142 fprintf(
stdout,
"\n\nSome tests FAILED!\n");
#define TEST_ROUNDTRIP(int8, uint8, sint8, int16, uint16, sint16, int32, uint32, sint32, int64, uint64, sint64, expected_result)