From c343812c420fbff5ed508680a78897778110208e Mon Sep 17 00:00:00 2001 From: "Roger A. Light" Date: Tue, 5 May 2020 23:24:06 +0100 Subject: [PATCH] Improve client test for unexpected pubrel. --- test/lib/03-publish-b2c-qos2-unexpected-pubrel.py | 3 +++ test/lib/c/03-publish-b2c-qos2-unexpected-pubrel.c | 5 ++++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/test/lib/03-publish-b2c-qos2-unexpected-pubrel.py b/test/lib/03-publish-b2c-qos2-unexpected-pubrel.py index 1d25199d..960a0d9f 100755 --- a/test/lib/03-publish-b2c-qos2-unexpected-pubrel.py +++ b/test/lib/03-publish-b2c-qos2-unexpected-pubrel.py @@ -20,6 +20,8 @@ pubrec_packet = mosq_test.gen_pubrec(mid) pubrel_packet = mosq_test.gen_pubrel(mid) pubcomp_packet = mosq_test.gen_pubcomp(mid) +publish_quit_packet = mosq_test.gen_publish("quit", qos=0, payload="quit") + sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) sock.settimeout(10) @@ -52,6 +54,7 @@ try: conn.send(pubrel_packet) if mosq_test.expect_packet(conn, "pubcomp", pubcomp_packet): + conn.send(publish_quit_packet) rc = 0 conn.close() diff --git a/test/lib/c/03-publish-b2c-qos2-unexpected-pubrel.c b/test/lib/c/03-publish-b2c-qos2-unexpected-pubrel.c index f51b814a..467d9b23 100644 --- a/test/lib/c/03-publish-b2c-qos2-unexpected-pubrel.c +++ b/test/lib/c/03-publish-b2c-qos2-unexpected-pubrel.c @@ -15,6 +15,10 @@ void on_connect(struct mosquitto *mosq, void *obj, int rc) void on_message(struct mosquitto *mosq, void *obj, const struct mosquitto_message *msg) { + if(!strcmp(msg->topic, "quit")){ + run = 0; + return; + } if(msg->mid != 13423){ printf("Invalid mid (%d)\n", msg->mid); exit(1); @@ -40,7 +44,6 @@ void on_message(struct mosquitto *mosq, void *obj, const struct mosquitto_messag exit(1); } - run = 0; } int main(int argc, char *argv[])