From fe3a4d0b587de32cf6dbb12b3b98254f945d3227 Mon Sep 17 00:00:00 2001 From: Johannes Schriewer Date: Sat, 28 Jul 2018 22:35:15 +0200 Subject: [PATCH] Hide internal API again and modify tests so coverage will be higher --- src/packet.h | 29 ----------------------------- tests/decode_packet.c | 3 +++ tests/encode_packet.c | 39 ++++++++++++++++++++++----------------- 3 files changed, 25 insertions(+), 46 deletions(-) diff --git a/src/packet.h b/src/packet.h index 5c84d0d..8f539bf 100644 --- a/src/packet.h +++ b/src/packet.h @@ -127,33 +127,4 @@ void free_MQTTPacket(MQTTPacket *packet); Buffer *mqtt_packet_encode(MQTTPacket *packet); MQTTPacket *allocate_MQTTPacket(MQTTControlPacketType type); - -/* - * Internal - */ - -size_t variable_length_int_encode(uint16_t value, Buffer *buffer); -size_t variable_length_int_size(uint16_t value); -size_t utf8_string_encode(char *string, Buffer *buffer); - -Buffer *make_buffer_for_header(size_t sz, MQTTControlPacketType type); -Buffer *encode_connect(ConnectPayload *payload); -Buffer *encode_connack(ConnAckPayload *payload); -Buffer *encode_publish(PublishPayload *payload); -Buffer *encode_puback(PubAckPayload *payload); -Buffer *encode_pubrec(PubRecPayload *payload); -Buffer *encode_pubrel(PubRelPayload *payload); -Buffer *encode_pubcomp(PubCompPayload *payload); -Buffer *encode_subscribe(SubscribePayload *payload); -Buffer *encode_suback(SubAckPayload *payload); -Buffer *encode_unsubscribe(UnsubscribePayload *payload); -Buffer *encode_unsuback(UnsubAckPayload *payload); -Buffer *encode_pingreq(); -Buffer *encode_pingresp(); -Buffer *encode_disconnect(); - - -uint16_t variable_length_int_decode(Buffer *buffer); -char *utf8_string_decode(Buffer *buffer); - #endif /* packet_h__included */ diff --git a/tests/decode_packet.c b/tests/decode_packet.c index c3dc182..e5701a2 100644 --- a/tests/decode_packet.c +++ b/tests/decode_packet.c @@ -1,6 +1,9 @@ #include "test.h" #include "packet.h" +extern uint16_t variable_length_int_decode(Buffer *buffer); +extern char *utf8_string_decode(Buffer *buffer); + // Variable length int data check TestResult test_vl_int_data_0(void) { diff --git a/tests/encode_packet.c b/tests/encode_packet.c index 4542667..c1ed28d 100644 --- a/tests/encode_packet.c +++ b/tests/encode_packet.c @@ -1,6 +1,11 @@ #include "test.h" #include "packet.h" +extern size_t variable_length_int_encode(uint16_t value, Buffer *buffer); +extern size_t variable_length_int_size(uint16_t value); +extern size_t utf8_string_encode(char *string, Buffer *buffer); +extern Buffer *make_buffer_for_header(size_t sz, MQTTControlPacketType type); + // Variable length int length calculation TestResult test_vl_int_0(void) { TESTASSERT(variable_length_int_size(0) == 1, "Values < 128 should fit in one byte"); @@ -154,7 +159,7 @@ TestResult test_encode_connect_simple(void) { payload->keepalive_interval = 10; payload->clean_session = 1; - Buffer *encoded = encode_connect(payload); + Buffer *encoded = mqtt_packet_encode(&(MQTTPacket){ PacketTypeConnect, payload }); free(payload); return TESTMEMCMP( @@ -184,7 +189,7 @@ TestResult test_encode_connect_will(void) { payload->will_qos = MQTT_QOS_1; payload->retain_will = true; - Buffer *encoded = encode_connect(payload); + Buffer *encoded = mqtt_packet_encode(&(MQTTPacket){ PacketTypeConnect, payload }); free(payload); return TESTMEMCMP( @@ -218,7 +223,7 @@ TestResult test_encode_connect_auth(void) { payload->username = "anon"; payload->password = "test"; - Buffer *encoded = encode_connect(payload); + Buffer *encoded = mqtt_packet_encode(&(MQTTPacket){ PacketTypeConnect, payload }); free(payload); return TESTMEMCMP( @@ -238,7 +243,7 @@ TestResult test_encode_connack(void) { payload->session_present = true; payload->status = ConnAckStatusAccepted; - Buffer *encoded = encode_connack(payload); + Buffer *encoded = mqtt_packet_encode(&(MQTTPacket){ PacketTypeConnAck, payload }); free(payload); return TESTMEMCMP( @@ -260,7 +265,7 @@ TestResult test_encode_publish_no_msg(void) { payload->topic = "test/topic"; payload->packet_id = 10; - Buffer *encoded = encode_publish(payload); + Buffer *encoded = mqtt_packet_encode(&(MQTTPacket){ PacketTypePublish, payload }); free(payload); return TESTMEMCMP( @@ -284,7 +289,7 @@ TestResult test_encode_publish_with_msg(void) { payload->packet_id = 10; payload->message = "payload"; - Buffer *encoded = encode_publish(payload); + Buffer *encoded = mqtt_packet_encode(&(MQTTPacket){ PacketTypePublish, payload }); free(payload); return TESTMEMCMP( @@ -302,7 +307,7 @@ TestResult test_encode_puback(void) { payload->packet_id = 10; - Buffer *encoded = encode_puback(payload); + Buffer *encoded = mqtt_packet_encode(&(MQTTPacket){ PacketTypePubAck, payload }); free(payload); return TESTMEMCMP( @@ -320,7 +325,7 @@ TestResult test_encode_pubrec(void) { payload->packet_id = 10; - Buffer *encoded = encode_pubrec(payload); + Buffer *encoded = mqtt_packet_encode(&(MQTTPacket){ PacketTypePubRec, payload }); free(payload); return TESTMEMCMP( @@ -338,7 +343,7 @@ TestResult test_encode_pubrel(void) { payload->packet_id = 10; - Buffer *encoded = encode_pubrel(payload); + Buffer *encoded = mqtt_packet_encode(&(MQTTPacket){ PacketTypePubRel, payload }); free(payload); return TESTMEMCMP( @@ -356,7 +361,7 @@ TestResult test_encode_pubcomp(void) { payload->packet_id = 10; - Buffer *encoded = encode_pubcomp(payload); + Buffer *encoded = mqtt_packet_encode(&(MQTTPacket){ PacketTypePubComp, payload }); free(payload); return TESTMEMCMP( @@ -378,7 +383,7 @@ TestResult test_encode_subscribe(void) { payload->topic = "test/topic"; payload->qos = MQTT_QOS_1; - Buffer *encoded = encode_subscribe(payload); + Buffer *encoded = mqtt_packet_encode(&(MQTTPacket){ PacketTypeSubscribe, payload }); free(payload); return TESTMEMCMP( @@ -398,7 +403,7 @@ TestResult test_encode_suback(void) { payload->packet_id = 10; payload->status = SubAckStatusQoS2; - Buffer *encoded = encode_suback(payload); + Buffer *encoded = mqtt_packet_encode(&(MQTTPacket){ PacketTypeSubAck, payload }); free(payload); return TESTMEMCMP( @@ -418,7 +423,7 @@ TestResult test_encode_unsubscribe(void) { payload->packet_id = 10; payload->topic = "test/topic"; - Buffer *encoded = encode_unsubscribe(payload); + Buffer *encoded = mqtt_packet_encode(&(MQTTPacket){ PacketTypeUnsubscribe, payload }); free(payload); return TESTMEMCMP( @@ -436,7 +441,7 @@ TestResult test_encode_unsuback(void) { payload->packet_id = 10; - Buffer *encoded = encode_unsuback(payload); + Buffer *encoded = mqtt_packet_encode(&(MQTTPacket){ PacketTypeUnsubAck, payload }); free(payload); return TESTMEMCMP( @@ -450,7 +455,7 @@ TestResult test_encode_pingreq(void) { 0xc0, 0x00 // header }; - Buffer *encoded = encode_pingreq(); + Buffer *encoded = mqtt_packet_encode(&(MQTTPacket){ PacketTypePingReq, NULL }); return TESTMEMCMP( buffer_from_data_copy(data, sizeof(data)), @@ -463,7 +468,7 @@ TestResult test_encode_pingresp(void) { 0xd0, 0x00 // header }; - Buffer *encoded = encode_pingresp(); + Buffer *encoded = mqtt_packet_encode(&(MQTTPacket){ PacketTypePingResp, NULL }); return TESTMEMCMP( buffer_from_data_copy(data, sizeof(data)), @@ -476,7 +481,7 @@ TestResult test_encode_disconnect(void) { 0xe0, 0x00 // header }; - Buffer *encoded = encode_disconnect(); + Buffer *encoded = mqtt_packet_encode(&(MQTTPacket){ PacketTypeDisconnect, NULL }); return TESTMEMCMP( buffer_from_data_copy(data, sizeof(data)),