diff --git a/test/broker/02-subpub-qos0.py b/test/broker/02-subpub-qos0.py index b2c9043d..00cdb176 100755 --- a/test/broker/02-subpub-qos0.py +++ b/test/broker/02-subpub-qos0.py @@ -26,13 +26,11 @@ broker = mosq_test.start_broker(filename=os.path.basename(__file__), port=port) try: sock = mosq_test.do_client_connect(connect_packet, connack_packet, timeout=20, port=port) - sock.send(subscribe_packet) - if mosq_test.expect_packet(sock, "suback", suback_packet): - sock.send(publish_packet) + mosq_test.do_send_receive(sock, subscribe_packet, suback_packet, "suback") + mosq_test.do_send_receive(sock, publish_packet, publish_packet, "publish") - if mosq_test.expect_packet(sock, "publish", publish_packet): - rc = 0 + rc = 0 sock.close() finally: diff --git a/test/broker/02-subpub-qos1.py b/test/broker/02-subpub-qos1.py index f1bad8ce..c4a86599 100755 --- a/test/broker/02-subpub-qos1.py +++ b/test/broker/02-subpub-qos1.py @@ -32,15 +32,13 @@ broker = mosq_test.start_broker(filename=os.path.basename(__file__), port=port) try: sock = mosq_test.do_client_connect(connect_packet, connack_packet, timeout=20, port=port) - sock.send(subscribe_packet) - if mosq_test.expect_packet(sock, "suback", suback_packet): - sock.send(publish_packet) + mosq_test.do_send_receive(sock, subscribe_packet, suback_packet, "suback") - if mosq_test.expect_packet(sock, "puback", puback_packet): + mosq_test.do_send_receive(sock, publish_packet, puback_packet, "puback") - if mosq_test.expect_packet(sock, "publish2", publish_packet2): - rc = 0 + if mosq_test.expect_packet(sock, "publish2", publish_packet2): + rc = 0 sock.close() finally: diff --git a/test/broker/02-subpub-qos2.py b/test/broker/02-subpub-qos2.py index c40264dc..610e7c57 100755 --- a/test/broker/02-subpub-qos2.py +++ b/test/broker/02-subpub-qos2.py @@ -37,21 +37,15 @@ broker = mosq_test.start_broker(filename=os.path.basename(__file__), port=port) try: sock = mosq_test.do_client_connect(connect_packet, connack_packet, timeout=20, port=port) - sock.send(subscribe_packet) - if mosq_test.expect_packet(sock, "suback", suback_packet): - sock.send(publish_packet) + mosq_test.do_send_receive(sock, subscribe_packet, suback_packet, "suback") + mosq_test.do_send_receive(sock, publish_packet, pubrec_packet, "pubrec") + mosq_test.do_send_receive(sock, pubrel_packet, pubcomp_packet, "pubcomp") - if mosq_test.expect_packet(sock, "pubrec", pubrec_packet): - sock.send(pubrel_packet) - - if mosq_test.expect_packet(sock, "pubcomp", pubcomp_packet): - if mosq_test.expect_packet(sock, "publish2", publish_packet2): - sock.send(pubrec_packet2) - - if mosq_test.expect_packet(sock, "pubrel2", pubrel_packet2): - # Broker side of flow complete so can quit here. - rc = 0 + if mosq_test.expect_packet(sock, "publish2", publish_packet2): + mosq_test.do_send_receive(sock, pubrec_packet2, pubrel_packet2, "pubrel2") + # Broker side of flow complete so can quit here. + rc = 0 sock.close() finally: diff --git a/test/broker/02-subscribe-invalid-utf8.py b/test/broker/02-subscribe-invalid-utf8.py index 7b55c9dd..00bed94b 100755 --- a/test/broker/02-subscribe-invalid-utf8.py +++ b/test/broker/02-subscribe-invalid-utf8.py @@ -32,10 +32,9 @@ try: time.sleep(0.5) sock = mosq_test.do_client_connect(connect_packet, connack_packet, port=port) - sock.send(subscribe_packet) + mosq_test.do_send_receive(sock, subscribe_packet, "", "suback") - if mosq_test.expect_packet(sock, "suback", ""): - rc = 0 + rc = 0 sock.close() finally: diff --git a/test/broker/02-subscribe-qos0.py b/test/broker/02-subscribe-qos0.py index 5c0332c9..a3ec5803 100755 --- a/test/broker/02-subscribe-qos0.py +++ b/test/broker/02-subscribe-qos0.py @@ -27,10 +27,9 @@ try: time.sleep(0.5) sock = mosq_test.do_client_connect(connect_packet, connack_packet, port=port) - sock.send(subscribe_packet) + mosq_test.do_send_receive(sock, subscribe_packet, suback_packet, "suback") - if mosq_test.expect_packet(sock, "suback", suback_packet): - rc = 0 + rc = 0 sock.close() finally: diff --git a/test/broker/02-subscribe-qos1.py b/test/broker/02-subscribe-qos1.py index 7234666c..03b326f3 100755 --- a/test/broker/02-subscribe-qos1.py +++ b/test/broker/02-subscribe-qos1.py @@ -24,10 +24,9 @@ broker = mosq_test.start_broker(filename=os.path.basename(__file__), port=port) try: sock = mosq_test.do_client_connect(connect_packet, connack_packet, port=port) - sock.send(subscribe_packet) + mosq_test.do_send_receive(sock, subscribe_packet, suback_packet, "suback") - if mosq_test.expect_packet(sock, "suback", suback_packet): - rc = 0 + rc = 0 sock.close() finally: diff --git a/test/broker/02-subscribe-qos2.py b/test/broker/02-subscribe-qos2.py index f30808a2..c3e34256 100755 --- a/test/broker/02-subscribe-qos2.py +++ b/test/broker/02-subscribe-qos2.py @@ -24,10 +24,9 @@ broker = mosq_test.start_broker(filename=os.path.basename(__file__), port=port) try: sock = mosq_test.do_client_connect(connect_packet, connack_packet, port=port) - sock.send(subscribe_packet) + mosq_test.do_send_receive(sock, subscribe_packet, suback_packet, "suback") - if mosq_test.expect_packet(sock, "suback", suback_packet): - rc = 0 + rc = 0 sock.close() finally: diff --git a/test/broker/02-unsubscribe-invalid-no-topic.py b/test/broker/02-unsubscribe-invalid-no-topic.py index a0266ca9..b5a34152 100755 --- a/test/broker/02-unsubscribe-invalid-no-topic.py +++ b/test/broker/02-unsubscribe-invalid-no-topic.py @@ -29,10 +29,9 @@ broker = mosq_test.start_broker(filename=os.path.basename(__file__), port=port) try: sock = mosq_test.do_client_connect(connect_packet, connack_packet, port=port) - sock.send(unsubscribe_packet) + mosq_test.do_send_receive(sock, unsubscribe_packet, "", "disconnect") - if mosq_test.expect_packet(sock, "disconnect", ""): - rc = 0 + rc = 0 sock.close() finally: diff --git a/test/broker/02-unsubscribe-qos0.py b/test/broker/02-unsubscribe-qos0.py index e2a3c0eb..99b85a94 100755 --- a/test/broker/02-unsubscribe-qos0.py +++ b/test/broker/02-unsubscribe-qos0.py @@ -25,10 +25,9 @@ broker = mosq_test.start_broker(filename=os.path.basename(__file__), port=port) try: sock = mosq_test.do_client_connect(connect_packet, connack_packet, port=port) - sock.send(unsubscribe_packet) + mosq_test.do_send_receive(sock, unsubscribe_packet, unsuback_packet, "unsuback") - if mosq_test.expect_packet(sock, "unsuback", unsuback_packet): - rc = 0 + rc = 0 sock.close() finally: diff --git a/test/broker/02-unsubscribe-qos1.py b/test/broker/02-unsubscribe-qos1.py index 3f6ef583..45dfdf5f 100755 --- a/test/broker/02-unsubscribe-qos1.py +++ b/test/broker/02-unsubscribe-qos1.py @@ -24,10 +24,9 @@ broker = mosq_test.start_broker(filename=os.path.basename(__file__), port=port) try: sock = mosq_test.do_client_connect(connect_packet, connack_packet, port=port) - sock.send(unsubscribe_packet) + mosq_test.do_send_receive(sock, unsubscribe_packet, unsuback_packet, "unsuback") - if mosq_test.expect_packet(sock, "unsuback", unsuback_packet): - rc = 0 + rc = 0 sock.close() finally: diff --git a/test/broker/02-unsubscribe-qos2.py b/test/broker/02-unsubscribe-qos2.py index 316040f0..e4767518 100755 --- a/test/broker/02-unsubscribe-qos2.py +++ b/test/broker/02-unsubscribe-qos2.py @@ -24,10 +24,9 @@ broker = mosq_test.start_broker(filename=os.path.basename(__file__), port=port) try: sock = mosq_test.do_client_connect(connect_packet, connack_packet, port=port) - sock.send(unsubscribe_packet) + mosq_test.do_send_receive(sock, unsubscribe_packet, unsuback_packet, "unsuback") - if mosq_test.expect_packet(sock, "unsuback", unsuback_packet): - rc = 0 + rc = 0 sock.close() finally: diff --git a/test/broker/03-pattern-matching.py b/test/broker/03-pattern-matching.py index 774d3390..02754fa4 100755 --- a/test/broker/03-pattern-matching.py +++ b/test/broker/03-pattern-matching.py @@ -35,22 +35,19 @@ def pattern_test(sub_topic, pub_topic): time.sleep(0.5) sock = mosq_test.do_client_connect(connect_packet, connack_packet, timeout=20, port=port) - sock.send(subscribe_packet) + mosq_test.do_send_receive(sock, subscribe_packet, suback_packet, "suback") - if mosq_test.expect_packet(sock, "suback", suback_packet): - pub = subprocess.Popen(['./03-pattern-matching-helper.py', pub_topic, str(port)], stdout=subprocess.PIPE, stderr=subprocess.PIPE) - pub.wait() - (stdo, stde) = pub.communicate() + pub = subprocess.Popen(['./03-pattern-matching-helper.py', pub_topic, str(port)], stdout=subprocess.PIPE, stderr=subprocess.PIPE) + pub.wait() + (stdo, stde) = pub.communicate() - if mosq_test.expect_packet(sock, "publish", publish_packet): - sock.send(unsubscribe_packet) + if mosq_test.expect_packet(sock, "publish", publish_packet): + mosq_test.do_send_receive(sock, unsubscribe_packet, unsuback_packet, "unsuback") - if mosq_test.expect_packet(sock, "unsuback", unsuback_packet): - sock.send(subscribe_packet) + mosq_test.do_send_receive(sock, subscribe_packet, suback_packet, "suback") - if mosq_test.expect_packet(sock, "suback", suback_packet): - if mosq_test.expect_packet(sock, "publish retained", publish_retained_packet): - rc = 0 + if mosq_test.expect_packet(sock, "publish retained", publish_retained_packet): + rc = 0 sock.close() finally: diff --git a/test/broker/03-publish-b2c-disconnect-qos1-helper.py b/test/broker/03-publish-b2c-disconnect-qos1-helper.py index 50046238..f6c9766f 100755 --- a/test/broker/03-publish-b2c-disconnect-qos1-helper.py +++ b/test/broker/03-publish-b2c-disconnect-qos1-helper.py @@ -20,10 +20,10 @@ publish_packet = mosq_test.gen_publish("qos1/disconnect/test", qos=1, mid=mid, p puback_packet = mosq_test.gen_puback(mid) sock = mosq_test.do_client_connect(connect_packet, connack_packet, connack_error="helper connack", port=port) -sock.send(publish_packet) -if mosq_test.expect_packet(sock, "helper puback", puback_packet): - rc = 0 +mosq_test.do_send_receive(sock, publish_packet, puback_packet, "helper puback") + +rc = 0 sock.close() diff --git a/test/broker/03-publish-b2c-disconnect-qos1.py b/test/broker/03-publish-b2c-disconnect-qos1.py index 22a9c6ee..14e1ed17 100755 --- a/test/broker/03-publish-b2c-disconnect-qos1.py +++ b/test/broker/03-publish-b2c-disconnect-qos1.py @@ -36,30 +36,29 @@ broker = mosq_test.start_broker(filename=os.path.basename(__file__), port=port) try: sock = mosq_test.do_client_connect(connect_packet, connack1_packet, port=port) - sock.send(subscribe_packet) - if mosq_test.expect_packet(sock, "suback", suback_packet): - pub = subprocess.Popen(['./03-publish-b2c-disconnect-qos1-helper.py', str(port)], stdout=subprocess.PIPE, stderr=subprocess.PIPE) - pub.wait() - (stdo, stde) = pub.communicate() - # Should have now received a publish command + mosq_test.do_send_receive(sock, subscribe_packet, suback_packet, "suback") - if mosq_test.expect_packet(sock, "publish", publish_packet): - # Send our outgoing message. When we disconnect the broker - # should get rid of it and assume we're going to retry. - sock.send(publish2_packet) - sock.close() + pub = subprocess.Popen(['./03-publish-b2c-disconnect-qos1-helper.py', str(port)], stdout=subprocess.PIPE, stderr=subprocess.PIPE) + pub.wait() + (stdo, stde) = pub.communicate() + # Should have now received a publish command - sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) - sock.settimeout(60) # 60 seconds timeout is much longer than 5 seconds message retry. - sock.connect(("localhost", port)) - sock.send(connect_packet) + if mosq_test.expect_packet(sock, "publish", publish_packet): + # Send our outgoing message. When we disconnect the broker + # should get rid of it and assume we're going to retry. + sock.send(publish2_packet) + sock.close() - if mosq_test.expect_packet(sock, "connack", connack2_packet): + sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) + sock.settimeout(60) # 60 seconds timeout is much longer than 5 seconds message retry. + sock.connect(("localhost", port)) - if mosq_test.expect_packet(sock, "dup publish", publish_dup_packet): - sock.send(puback_packet) - rc = 0 + mosq_test.do_send_receive(sock, connect_packet, connack2_packet, "connack") + + if mosq_test.expect_packet(sock, "dup publish", publish_dup_packet): + sock.send(puback_packet) + rc = 0 sock.close() finally: diff --git a/test/broker/03-publish-b2c-disconnect-qos2-helper.py b/test/broker/03-publish-b2c-disconnect-qos2-helper.py index ea3873bf..aa99fd4d 100755 --- a/test/broker/03-publish-b2c-disconnect-qos2-helper.py +++ b/test/broker/03-publish-b2c-disconnect-qos2-helper.py @@ -24,13 +24,11 @@ pubrel_packet = mosq_test.gen_pubrel(mid) pubcomp_packet = mosq_test.gen_pubcomp(mid) sock = mosq_test.do_client_connect(connect_packet, connack_packet, connack_error="helper connack", port=port) -sock.send(publish_packet) -if mosq_test.expect_packet(sock, "helper pubrec", pubrec_packet): - sock.send(pubrel_packet) +mosq_test.do_send_receive(sock, publish_packet, pubrec_packet, "helper pubrec") +mosq_test.do_send_receive(sock, pubrel_packet, pubcomp_packet, "helper pubcomp") - if mosq_test.expect_packet(sock, "helper pubcomp", pubcomp_packet): - rc = 0 +rc = 0 sock.close() diff --git a/test/broker/03-publish-b2c-disconnect-qos2.py b/test/broker/03-publish-b2c-disconnect-qos2.py index 70066136..8d40f5ae 100755 --- a/test/broker/03-publish-b2c-disconnect-qos2.py +++ b/test/broker/03-publish-b2c-disconnect-qos2.py @@ -36,34 +36,33 @@ broker = mosq_test.start_broker(filename=os.path.basename(__file__), port=port) try: sock = mosq_test.do_client_connect(connect_packet, connack1_packet, port=port) - sock.send(subscribe_packet) - if mosq_test.expect_packet(sock, "suback", suback_packet): - pub = subprocess.Popen(['./03-publish-b2c-disconnect-qos2-helper.py', str(port)], stdout=subprocess.PIPE, stderr=subprocess.PIPE) - hrc = pub.wait() - (stdo, stde) = pub.communicate() - if hrc: - exit(hrc) - # Should have now received a publish command + mosq_test.do_send_receive(sock, subscribe_packet, suback_packet, "suback") + + pub = subprocess.Popen(['./03-publish-b2c-disconnect-qos2-helper.py', str(port)], stdout=subprocess.PIPE, stderr=subprocess.PIPE) + hrc = pub.wait() + (stdo, stde) = pub.communicate() + if hrc: + exit(hrc) + # Should have now received a publish command + + if mosq_test.expect_packet(sock, "publish", publish_packet): + # Send our outgoing message. When we disconnect the broker + # should get rid of it and assume we're going to retry. + sock.send(publish2_packet) + sock.close() + + sock = mosq_test.do_client_connect(connect_packet, connack2_packet, port=port) + if mosq_test.expect_packet(sock, "dup publish", publish_dup_packet): + mosq_test.do_send_receive(sock, pubrec_packet, pubrel_packet, "pubrel") - if mosq_test.expect_packet(sock, "publish", publish_packet): - # Send our outgoing message. When we disconnect the broker - # should get rid of it and assume we're going to retry. - sock.send(publish2_packet) sock.close() sock = mosq_test.do_client_connect(connect_packet, connack2_packet, port=port) - if mosq_test.expect_packet(sock, "dup publish", publish_dup_packet): - sock.send(pubrec_packet) - - if mosq_test.expect_packet(sock, "pubrel", pubrel_packet): - sock.close() - - sock = mosq_test.do_client_connect(connect_packet, connack2_packet, port=port) - if mosq_test.expect_packet(sock, "dup pubrel", pubrel_packet): - sock.send(pubcomp_packet) - rc = 0 - sock.close() + if mosq_test.expect_packet(sock, "dup pubrel", pubrel_packet): + sock.send(pubcomp_packet) + rc = 0 + sock.close() finally: broker.terminate() diff --git a/test/broker/03-publish-b2c-timeout-qos1-helper.py b/test/broker/03-publish-b2c-timeout-qos1-helper.py index 18c46263..5ed91aba 100755 --- a/test/broker/03-publish-b2c-timeout-qos1-helper.py +++ b/test/broker/03-publish-b2c-timeout-qos1-helper.py @@ -20,10 +20,9 @@ publish_packet = mosq_test.gen_publish("qos1/timeout/test", qos=1, mid=mid, payl puback_packet = mosq_test.gen_puback(mid) sock = mosq_test.do_client_connect(connect_packet, connack_packet, connack_error="helper connack") -sock.send(publish_packet) +mosq_test.do_send_receive(sock, publish_packet, puback_packet, "helper puback") -if mosq_test.expect_packet(sock, "helper puback", puback_packet): - rc = 0 +rc = 0 sock.close() diff --git a/test/broker/03-publish-b2c-timeout-qos1.py b/test/broker/03-publish-b2c-timeout-qos1.py index a5f5b62e..a08dd44b 100755 --- a/test/broker/03-publish-b2c-timeout-qos1.py +++ b/test/broker/03-publish-b2c-timeout-qos1.py @@ -30,21 +30,20 @@ broker = mosq_test.start_broker(filename=os.path.basename(__file__)) try: sock = mosq_test.do_client_connect(connect_packet, connack_packet) - sock.send(subscribe_packet) + mosq_test.do_send_receive(sock, subscribe_packet, suback_packet, "suback") - if mosq_test.expect_packet(sock, "suback", suback_packet): - pub = subprocess.Popen(['./03-publish-b2c-timeout-qos1-helper.py'], stdout=subprocess.PIPE, stderr=subprocess.PIPE)) - pub.wait() - (stdo, stde) = pub.communicate() - # Should have now received a publish command + pub = subprocess.Popen(['./03-publish-b2c-timeout-qos1-helper.py'], stdout=subprocess.PIPE, stderr=subprocess.PIPE)) + pub.wait() + (stdo, stde) = pub.communicate() + # Should have now received a publish command - if mosq_test.expect_packet(sock, "publish", publish_packet): - # Wait for longer than 5 seconds to get republish with dup set - # This is covered by the 8 second timeout + if mosq_test.expect_packet(sock, "publish", publish_packet): + # Wait for longer than 5 seconds to get republish with dup set + # This is covered by the 8 second timeout - if mosq_test.expect_packet(sock, "dup publish", publish_dup_packet): - sock.send(puback_packet) - rc = 0 + if mosq_test.expect_packet(sock, "dup publish", publish_dup_packet): + sock.send(puback_packet) + rc = 0 sock.close() finally: diff --git a/test/broker/03-publish-b2c-timeout-qos2-helper.py b/test/broker/03-publish-b2c-timeout-qos2-helper.py index 45a1e237..a6e3f789 100755 --- a/test/broker/03-publish-b2c-timeout-qos2-helper.py +++ b/test/broker/03-publish-b2c-timeout-qos2-helper.py @@ -22,13 +22,10 @@ pubrel_packet = mosq_test.gen_pubrel(mid) pubcomp_packet = mosq_test.gen_pubcomp(mid) sock = mosq_test.do_client_connect(connect_packet, connack_packet, connack_error="helper connack") -sock.send(publish_packet) +mosq_test.do_send_receive(sock, publish_packet, pubrec_packet, "helper pubrec") +mosq_test.do_send_receive(sock, pubrel_packet, pubcomp_packet, "helper pubcomp") -if mosq_test.expect_packet(sock, "helper pubrec", pubrec_packet): - sock.send(pubrel_packet) - - if mosq_test.expect_packet(sock, "helper pubcomp", pubcomp_packet): - rc = 0 +rc = 0 sock.close() diff --git a/test/broker/03-publish-b2c-timeout-qos2.py b/test/broker/03-publish-b2c-timeout-qos2.py index 6186f8f7..aceef579 100755 --- a/test/broker/03-publish-b2c-timeout-qos2.py +++ b/test/broker/03-publish-b2c-timeout-qos2.py @@ -32,28 +32,26 @@ broker = mosq_test.start_broker(filename=os.path.basename(__file__)) try: sock = mosq_test.do_client_connect(connect_packet, connack_packet) - sock.send(subscribe_packet) + mosq_test.do_send_receive(sock, subscribe_packet, suback_packet, "suback") - if mosq_test.expect_packet(sock, "suback", suback_packet): - pub = subprocess.Popen(['./03-publish-b2c-timeout-qos2-helper.py'], stdout=subprocess.PIPE, stderr=subprocess.PIPE)) - pub.wait() - (stdo, stde) = pub.communicate() - # Should have now received a publish command + pub = subprocess.Popen(['./03-publish-b2c-timeout-qos2-helper.py'], stdout=subprocess.PIPE, stderr=subprocess.PIPE)) + pub.wait() + (stdo, stde) = pub.communicate() + # Should have now received a publish command + + if mosq_test.expect_packet(sock, "publish", publish_packet): + # Wait for longer than 5 seconds to get republish with dup set + # This is covered by the 8 second timeout + + if mosq_test.expect_packet(sock, "dup publish", publish_dup_packet): + mosq_test.do_send_receive(sock, pubrec_packet, pubrel_packet, "pubrel") - if mosq_test.expect_packet(sock, "publish", publish_packet): # Wait for longer than 5 seconds to get republish with dup set # This is covered by the 8 second timeout - if mosq_test.expect_packet(sock, "dup publish", publish_dup_packet): - sock.send(pubrec_packet) - - if mosq_test.expect_packet(sock, "pubrel", pubrel_packet): - # Wait for longer than 5 seconds to get republish with dup set - # This is covered by the 8 second timeout - - if mosq_test.expect_packet(sock, "dup pubrel", pubrel_packet): - sock.send(pubcomp_packet) - rc = 0 + if mosq_test.expect_packet(sock, "dup pubrel", pubrel_packet): + sock.send(pubcomp_packet) + rc = 0 sock.close() finally: diff --git a/test/broker/03-publish-c2b-disconnect-qos2.py b/test/broker/03-publish-c2b-disconnect-qos2.py index 2c38ae96..057690fc 100755 --- a/test/broker/03-publish-c2b-disconnect-qos2.py +++ b/test/broker/03-publish-c2b-disconnect-qos2.py @@ -31,28 +31,26 @@ broker = mosq_test.start_broker(filename=os.path.basename(__file__), port=port) try: sock = mosq_test.do_client_connect(connect_packet, connack_packet, port=port) - sock.send(publish_packet) + mosq_test.do_send_receive(sock, publish_packet, pubrec_packet, "pubrec") + + # We're now going to disconnect and pretend we didn't receive the pubrec. + sock.close() + + sock = mosq_test.do_client_connect(connect_packet, connack_packet, port=port) + sock.send(publish_dup_packet) + if mosq_test.expect_packet(sock, "pubrec", pubrec_packet): - # We're now going to disconnect and pretend we didn't receive the pubrec. + mosq_test.do_send_receive(sock, pubrel_packet, pubcomp_packet, "pubcomp") + + # Again, pretend we didn't receive this pubcomp sock.close() sock = mosq_test.do_client_connect(connect_packet, connack_packet, port=port) - sock.send(publish_dup_packet) + mosq_test.do_send_receive(sock, pubrel_dup_packet, pubcomp_packet, "pubcomp") - if mosq_test.expect_packet(sock, "pubrec", pubrec_packet): - sock.send(pubrel_packet) + rc = 0 - if mosq_test.expect_packet(sock, "pubcomp", pubcomp_packet): - # Again, pretend we didn't receive this pubcomp - sock.close() - - sock = mosq_test.do_client_connect(connect_packet, connack_packet, port=port) - sock.send(pubrel_dup_packet) - - if mosq_test.expect_packet(sock, "pubcomp", pubcomp_packet): - rc = 0 - - sock.close() + sock.close() finally: broker.terminate() broker.wait() diff --git a/test/broker/03-publish-c2b-timeout-qos2.py b/test/broker/03-publish-c2b-timeout-qos2.py index 582de5fd..2c7f6f79 100755 --- a/test/broker/03-publish-c2b-timeout-qos2.py +++ b/test/broker/03-publish-c2b-timeout-qos2.py @@ -27,16 +27,14 @@ broker = mosq_test.start_broker(filename=os.path.basename(__file__)) try: sock = mosq_test.do_client_connect(connect_packet, connack_packet) - sock.send(publish_packet) + mosq_test.do_send_receive(sock, publish_packet, pubrec_packet, "pubrec") + + # Timeout is 8 seconds which means the broker should repeat the PUBREC. if mosq_test.expect_packet(sock, "pubrec", pubrec_packet): - # Timeout is 8 seconds which means the broker should repeat the PUBREC. + mosq_test.do_send_receive(sock, pubrel_packet, pubcomp_packet, "pubcomp") - if mosq_test.expect_packet(sock, "pubrec", pubrec_packet): - sock.send(pubrel_packet) - - if mosq_test.expect_packet(sock, "pubcomp", pubcomp_packet): - rc = 0 + rc = 0 sock.close() finally: diff --git a/test/broker/03-publish-invalid-utf8.py b/test/broker/03-publish-invalid-utf8.py index b8706016..811b356a 100755 --- a/test/broker/03-publish-invalid-utf8.py +++ b/test/broker/03-publish-invalid-utf8.py @@ -32,10 +32,9 @@ try: time.sleep(0.5) sock = mosq_test.do_client_connect(connect_packet, connack_packet, port=port) - sock.send(publish_packet) + mosq_test.do_send_receive(sock, publish_packet, "", "puback") - if mosq_test.expect_packet(sock, "puback", ""): - rc = 0 + rc = 0 sock.close() finally: diff --git a/test/broker/03-publish-qos1.py b/test/broker/03-publish-qos1.py index 3e54e361..5bcebd47 100755 --- a/test/broker/03-publish-qos1.py +++ b/test/broker/03-publish-qos1.py @@ -24,10 +24,9 @@ broker = mosq_test.start_broker(filename=os.path.basename(__file__), port=port) try: sock = mosq_test.do_client_connect(connect_packet, connack_packet, port=port) - sock.send(publish_packet) + mosq_test.do_send_receive(sock, publish_packet, puback_packet, "puback") - if mosq_test.expect_packet(sock, "puback", puback_packet): - rc = 0 + rc = 0 sock.close() finally: diff --git a/test/broker/03-publish-qos2.py b/test/broker/03-publish-qos2.py index 1d24dfb7..c6ae3c69 100755 --- a/test/broker/03-publish-qos2.py +++ b/test/broker/03-publish-qos2.py @@ -26,13 +26,10 @@ broker = mosq_test.start_broker(filename=os.path.basename(__file__), port=port) try: sock = mosq_test.do_client_connect(connect_packet, connack_packet, port=port) - sock.send(publish_packet) + mosq_test.do_send_receive(sock, publish_packet, pubrec_packet, "pubrec") + mosq_test.do_send_receive(sock, pubrel_packet, pubcomp_packet, "pubcomp") - if mosq_test.expect_packet(sock, "pubrec", pubrec_packet): - sock.send(pubrel_packet) - - if mosq_test.expect_packet(sock, "pubcomp", pubcomp_packet): - rc = 0 + rc = 0 sock.close() finally: diff --git a/test/broker/04-retain-qos0-clear.py b/test/broker/04-retain-qos0-clear.py index 86d5d198..90cdf6c3 100755 --- a/test/broker/04-retain-qos0-clear.py +++ b/test/broker/04-retain-qos0-clear.py @@ -36,29 +36,26 @@ try: # Send retained message sock.send(publish_packet) # Subscribe to topic, we should get the retained message back. - sock.send(subscribe_packet) + mosq_test.do_send_receive(sock, subscribe_packet, suback_packet, "suback") - if mosq_test.expect_packet(sock, "suback", suback_packet): - if mosq_test.expect_packet(sock, "publish", publish_packet): - # Now unsubscribe from the topic before we clear the retained - # message. - sock.send(unsubscribe_packet) + if mosq_test.expect_packet(sock, "publish", publish_packet): + # Now unsubscribe from the topic before we clear the retained + # message. + mosq_test.do_send_receive(sock, unsubscribe_packet, unsuback_packet, "unsuback") - if mosq_test.expect_packet(sock, "unsuback", unsuback_packet): - # Now clear the retained message. - sock.send(retain_clear_packet) + # Now clear the retained message. + sock.send(retain_clear_packet) - # Subscribe to topic, we shouldn't get anything back apart - # from the SUBACK. - sock.send(subscribe_packet) - if mosq_test.expect_packet(sock, "suback", suback_packet): - try: - retain_clear = sock.recv(256) - except socket.timeout: - # This is the expected event - rc = 0 - else: - print("FAIL: Received unexpected message.") + # Subscribe to topic, we shouldn't get anything back apart + # from the SUBACK. + mosq_test.do_send_receive(sock, subscribe_packet, suback_packet, "suback") + try: + retain_clear = sock.recv(256) + except socket.timeout: + # This is the expected event + rc = 0 + else: + print("FAIL: Received unexpected message.") sock.close() finally: diff --git a/test/broker/04-retain-qos0-fresh.py b/test/broker/04-retain-qos0-fresh.py index bbd17465..c2445b82 100755 --- a/test/broker/04-retain-qos0-fresh.py +++ b/test/broker/04-retain-qos0-fresh.py @@ -27,13 +27,11 @@ broker = mosq_test.start_broker(filename=os.path.basename(__file__), port=port) try: sock = mosq_test.do_client_connect(connect_packet, connack_packet, port=port) - sock.send(subscribe_packet) + mosq_test.do_send_receive(sock, subscribe_packet, suback_packet, "suback") + mosq_test.do_send_receive(sock, publish_packet, publish_fresh_packet, "publish") - if mosq_test.expect_packet(sock, "suback", suback_packet): - sock.send(publish_packet) + rc = 0 - if mosq_test.expect_packet(sock, "publish", publish_fresh_packet): - rc = 0 sock.close() finally: broker.terminate() diff --git a/test/broker/04-retain-qos0-repeated.py b/test/broker/04-retain-qos0-repeated.py index afae3cce..7276248a 100755 --- a/test/broker/04-retain-qos0-repeated.py +++ b/test/broker/04-retain-qos0-repeated.py @@ -31,18 +31,15 @@ broker = mosq_test.start_broker(filename=os.path.basename(__file__), port=port) try: sock = mosq_test.do_client_connect(connect_packet, connack_packet, timeout=20, port=port) sock.send(publish_packet) - sock.send(subscribe_packet) + mosq_test.do_send_receive(sock, subscribe_packet, suback_packet, "suback") + + if mosq_test.expect_packet(sock, "publish", publish_packet): + mosq_test.do_send_receive(sock, unsubscribe_packet, unsuback_packet, "unsuback") + mosq_test.do_send_receive(sock, subscribe_packet, suback_packet, "suback") - if mosq_test.expect_packet(sock, "suback", suback_packet): if mosq_test.expect_packet(sock, "publish", publish_packet): - sock.send(unsubscribe_packet) + rc = 0 - if mosq_test.expect_packet(sock, "unsuback", unsuback_packet): - sock.send(subscribe_packet) - - if mosq_test.expect_packet(sock, "suback", suback_packet): - if mosq_test.expect_packet(sock, "publish", publish_packet): - rc = 0 sock.close() finally: broker.terminate() diff --git a/test/broker/04-retain-qos0.py b/test/broker/04-retain-qos0.py index 5d350200..2d698671 100755 --- a/test/broker/04-retain-qos0.py +++ b/test/broker/04-retain-qos0.py @@ -26,11 +26,11 @@ broker = mosq_test.start_broker(filename=os.path.basename(__file__), port=port) try: sock = mosq_test.do_client_connect(connect_packet, connack_packet, port=port) sock.send(publish_packet) - sock.send(subscribe_packet) + mosq_test.do_send_receive(sock, subscribe_packet, suback_packet, "suback") + + if mosq_test.expect_packet(sock, "publish", publish_packet): + rc = 0 - if mosq_test.expect_packet(sock, "suback", suback_packet): - if mosq_test.expect_packet(sock, "publish", publish_packet): - rc = 0 sock.close() finally: broker.terminate() diff --git a/test/broker/04-retain-qos1-qos0.py b/test/broker/04-retain-qos1-qos0.py index bb6ebb3b..dd452652 100755 --- a/test/broker/04-retain-qos1-qos0.py +++ b/test/broker/04-retain-qos1-qos0.py @@ -30,14 +30,12 @@ broker = mosq_test.start_broker(filename=os.path.basename(__file__), port=port) try: sock = mosq_test.do_client_connect(connect_packet, connack_packet, port=port) - sock.send(publish_packet) + mosq_test.do_send_receive(sock, publish_packet, puback_packet, "puback") + mosq_test.do_send_receive(sock, subscribe_packet, suback_packet, "suback") - if mosq_test.expect_packet(sock, "puback", puback_packet): - sock.send(subscribe_packet) + if mosq_test.expect_packet(sock, "publish0", publish0_packet): + rc = 0 - if mosq_test.expect_packet(sock, "suback", suback_packet): - if mosq_test.expect_packet(sock, "publish0", publish0_packet): - rc = 0 sock.close() finally: broker.terminate() diff --git a/test/broker/04-retain-upgrade-outgoing-qos.py b/test/broker/04-retain-upgrade-outgoing-qos.py index a2e068b8..597e9828 100755 --- a/test/broker/04-retain-upgrade-outgoing-qos.py +++ b/test/broker/04-retain-upgrade-outgoing-qos.py @@ -38,13 +38,11 @@ try: sock = mosq_test.do_client_connect(connect_packet, connack_packet, port=port) sock.send(publish_packet) - #sock.close() - #sock = mosq_test.do_client_connect(connect_packet, connack_packet, port=port) - sock.send(subscribe_packet) + mosq_test.do_send_receive(sock, subscribe_packet, suback_packet, "suback") + + if mosq_test.expect_packet(sock, "publish", publish_packet2): + rc = 0 - if mosq_test.expect_packet(sock, "suback", suback_packet): - if mosq_test.expect_packet(sock, "publish", publish_packet2): - rc = 0 sock.close() finally: os.remove(conf_file) diff --git a/test/broker/05-clean-session-qos1-helper.py b/test/broker/05-clean-session-qos1-helper.py index bcea34bc..c1e62444 100755 --- a/test/broker/05-clean-session-qos1-helper.py +++ b/test/broker/05-clean-session-qos1-helper.py @@ -21,10 +21,9 @@ puback_packet = mosq_test.gen_puback(mid) port = mosq_test.get_port() sock = mosq_test.do_client_connect(connect_packet, connack_packet, port=port) -sock.send(publish_packet) +mosq_test.do_send_receive(sock, publish_packet, puback_packet, "puback") -if mosq_test.expect_packet(sock, "puback", puback_packet): - rc = 0 +rc = 0 sock.close() diff --git a/test/broker/05-clean-session-qos1.py b/test/broker/05-clean-session-qos1.py index 172b87bf..7ae6cdc8 100755 --- a/test/broker/05-clean-session-qos1.py +++ b/test/broker/05-clean-session-qos1.py @@ -33,23 +33,22 @@ broker = mosq_test.start_broker(filename=os.path.basename(__file__), port=port) try: sock = mosq_test.do_client_connect(connect_packet, connack1_packet, port=port) - sock.send(subscribe_packet) + mosq_test.do_send_receive(sock, subscribe_packet, suback_packet, "suback") - if mosq_test.expect_packet(sock, "suback", suback_packet): - sock.send(disconnect_packet) - sock.close() + sock.send(disconnect_packet) + sock.close() - pub = subprocess.Popen(['./05-clean-session-qos1-helper.py', str(port)], stdout=subprocess.PIPE, stderr=subprocess.PIPE) - pub.wait() - (stdo, stde) = pub.communicate() + pub = subprocess.Popen(['./05-clean-session-qos1-helper.py', str(port)], stdout=subprocess.PIPE, stderr=subprocess.PIPE) + pub.wait() + (stdo, stde) = pub.communicate() - # Now reconnect and expect a publish message. - sock = mosq_test.do_client_connect(connect_packet, connack2_packet, timeout=30, port=port) - if mosq_test.expect_packet(sock, "publish", publish_packet): - sock.send(puback_packet) - rc = 0 + # Now reconnect and expect a publish message. + sock = mosq_test.do_client_connect(connect_packet, connack2_packet, timeout=30, port=port) + if mosq_test.expect_packet(sock, "publish", publish_packet): + sock.send(puback_packet) + rc = 0 - sock.close() + sock.close() finally: broker.terminate() broker.wait() diff --git a/test/broker/06-bridge-br2b-disconnect-qos1-helper.py b/test/broker/06-bridge-br2b-disconnect-qos1-helper.py index 3a8667bb..f010cd33 100755 --- a/test/broker/06-bridge-br2b-disconnect-qos1-helper.py +++ b/test/broker/06-bridge-br2b-disconnect-qos1-helper.py @@ -20,10 +20,9 @@ publish_packet = mosq_test.gen_publish("bridge/disconnect/test", qos=1, mid=mid, puback_packet = mosq_test.gen_puback(mid) sock = mosq_test.do_client_connect(connect_packet, connack_packet, port=port, connack_error="helper connack") -sock.send(publish_packet) +mosq_test.do_send_receive(sock, publish_packet, puback_packet, "helper puback") -if mosq_test.expect_packet(sock, "helper puback", puback_packet): - rc = 0 +rc = 0 sock.close() diff --git a/test/broker/06-bridge-reconnect-local-out-helper.py b/test/broker/06-bridge-reconnect-local-out-helper.py index 0dcc274c..cf46147b 100755 --- a/test/broker/06-bridge-reconnect-local-out-helper.py +++ b/test/broker/06-bridge-reconnect-local-out-helper.py @@ -21,11 +21,10 @@ puback_packet = mosq_test.gen_puback(mid=1) disconnect_packet = mosq_test.gen_disconnect() sock = mosq_test.do_client_connect(connect_packet, connack_packet, port=port, connack_error="helper connack") -sock.send(publish_packet) +mosq_test.do_send_receive(sock, publish_packet, puback_packet, "puback") -if mosq_test.expect_packet(sock, "puback", puback_packet): - sock.send(disconnect_packet) - rc = 0 +sock.send(disconnect_packet) +rc = 0 sock.close() diff --git a/test/broker/06-bridge-reconnect-local-out.py b/test/broker/06-bridge-reconnect-local-out.py index 6a5d349e..9edde871 100755 --- a/test/broker/06-bridge-reconnect-local-out.py +++ b/test/broker/06-bridge-reconnect-local-out.py @@ -67,19 +67,17 @@ else: pub = None try: sock = mosq_test.do_client_connect(connect_packet, connack_packet, port=port1) - sock.send(subscribe_packet) + mosq_test.do_send_receive(sock, subscribe_packet, suback_packet, "suback") + mosq_test.do_send_receive(sock, subscribe_packet, suback_packet, "suback") - if mosq_test.expect_packet(sock, "suback", suback_packet): - sock.send(subscribe_packet) + pub = subprocess.Popen(['./06-bridge-reconnect-local-out-helper.py', str(port2)], stdout=subprocess.PIPE, stderr=subprocess.PIPE) + pub.wait() + (stdo, stde) = pub.communicate() + # Should have now received a publish command - if mosq_test.expect_packet(sock, "suback", suback_packet): - pub = subprocess.Popen(['./06-bridge-reconnect-local-out-helper.py', str(port2)], stdout=subprocess.PIPE, stderr=subprocess.PIPE) - pub.wait() - (stdo, stde) = pub.communicate() - # Should have now received a publish command + if mosq_test.expect_packet(sock, "publish", publish_packet): + rc = 0 - if mosq_test.expect_packet(sock, "publish", publish_packet): - rc = 0 sock.close() finally: os.remove(conf_file) diff --git a/test/broker/07-will-null.py b/test/broker/07-will-null.py index d4372b67..0a76fdca 100755 --- a/test/broker/07-will-null.py +++ b/test/broker/07-will-null.py @@ -27,15 +27,14 @@ broker = mosq_test.start_broker(filename=os.path.basename(__file__), port=port) try: sock = mosq_test.do_client_connect(connect_packet, connack_packet, timeout=30, port=port) - sock.send(subscribe_packet) + mosq_test.do_send_receive(sock, subscribe_packet, suback_packet, "suback") - if mosq_test.expect_packet(sock, "suback", suback_packet): - will = subprocess.Popen(['./07-will-null-helper.py', str(port)], stdout=subprocess.PIPE, stderr=subprocess.PIPE) - will.wait() - (stdo, stde) = will.communicate() + will = subprocess.Popen(['./07-will-null-helper.py', str(port)], stdout=subprocess.PIPE, stderr=subprocess.PIPE) + will.wait() + (stdo, stde) = will.communicate() - if mosq_test.expect_packet(sock, "publish", publish_packet): - rc = 0 + if mosq_test.expect_packet(sock, "publish", publish_packet): + rc = 0 sock.close() finally: diff --git a/test/broker/07-will-qos0.py b/test/broker/07-will-qos0.py index e461adcf..4c7ef7d4 100755 --- a/test/broker/07-will-qos0.py +++ b/test/broker/07-will-qos0.py @@ -28,15 +28,14 @@ broker = mosq_test.start_broker(filename=os.path.basename(__file__), port=port) try: sock = mosq_test.do_client_connect(connect_packet, connack_packet, timeout=30, port=port) - sock.send(subscribe_packet) + mosq_test.do_send_receive(sock, subscribe_packet, suback_packet, "suback") - if mosq_test.expect_packet(sock, "suback", suback_packet): - will = subprocess.Popen(['./07-will-qos0-helper.py', str(port)], stdout=subprocess.PIPE, stderr=subprocess.PIPE) - will.wait() - (stdo, stde) = will.communicate() + will = subprocess.Popen(['./07-will-qos0-helper.py', str(port)], stdout=subprocess.PIPE, stderr=subprocess.PIPE) + will.wait() + (stdo, stde) = will.communicate() - if mosq_test.expect_packet(sock, "publish", publish_packet): - rc = 0 + if mosq_test.expect_packet(sock, "publish", publish_packet): + rc = 0 sock.close() finally: diff --git a/test/broker/08-ssl-connect-cert-auth-crl.py b/test/broker/08-ssl-connect-cert-auth-crl.py index dd281e33..492b7d8d 100755 --- a/test/broker/08-ssl-connect-cert-auth-crl.py +++ b/test/broker/08-ssl-connect-cert-auth-crl.py @@ -42,10 +42,10 @@ try: ssock = ssl.wrap_socket(sock, ca_certs="../ssl/test-root-ca.crt", certfile="../ssl/client.crt", keyfile="../ssl/client.key", cert_reqs=ssl.CERT_REQUIRED) ssock.settimeout(20) ssock.connect(("localhost", port1)) - ssock.send(connect_packet) - if mosq_test.expect_packet(ssock, "connack", connack_packet): - rc = 0 + mosq_test.do_send_receive(ssock, connect_packet, connack_packet, "connack") + + rc = 0 ssock.close() finally: diff --git a/test/broker/08-ssl-connect-cert-auth.py b/test/broker/08-ssl-connect-cert-auth.py index 8354ac69..04ca171c 100755 --- a/test/broker/08-ssl-connect-cert-auth.py +++ b/test/broker/08-ssl-connect-cert-auth.py @@ -43,10 +43,10 @@ try: ssock = ssl.wrap_socket(sock, ca_certs="../ssl/test-root-ca.crt", certfile="../ssl/client.crt", keyfile="../ssl/client.key", cert_reqs=ssl.CERT_REQUIRED) ssock.settimeout(20) ssock.connect(("localhost", port1)) - ssock.send(connect_packet) - if mosq_test.expect_packet(ssock, "connack", connack_packet): - rc = 0 + mosq_test.do_send_receive(ssock, connect_packet, connack_packet, "connack") + + rc = 0 ssock.close() finally: diff --git a/test/broker/08-ssl-connect-identity.py b/test/broker/08-ssl-connect-identity.py index 2fb7b4b5..b73c2d12 100755 --- a/test/broker/08-ssl-connect-identity.py +++ b/test/broker/08-ssl-connect-identity.py @@ -46,10 +46,10 @@ try: ssock = ssl.wrap_socket(sock, ca_certs="../ssl/test-root-ca.crt", certfile="../ssl/client.crt", keyfile="../ssl/client.key", cert_reqs=ssl.CERT_REQUIRED) ssock.settimeout(20) ssock.connect(("localhost", port1)) - ssock.send(connect_packet) - if mosq_test.expect_packet(ssock, "connack", connack_packet): - rc = 0 + mosq_test.do_send_receive(ssock, connect_packet, connack_packet, "connack") + + rc = 0 ssock.close() finally: diff --git a/test/broker/08-ssl-connect-no-auth.py b/test/broker/08-ssl-connect-no-auth.py index 87199a9c..67c3a877 100755 --- a/test/broker/08-ssl-connect-no-auth.py +++ b/test/broker/08-ssl-connect-no-auth.py @@ -43,10 +43,10 @@ try: ssock = ssl.wrap_socket(sock, ca_certs="../ssl/test-root-ca.crt", cert_reqs=ssl.CERT_REQUIRED, ssl_version=ssl.PROTOCOL_TLSv1) ssock.settimeout(20) ssock.connect(("localhost", port1)) - ssock.send(connect_packet) - if mosq_test.expect_packet(ssock, "connack", connack_packet): - rc = 0 + mosq_test.do_send_receive(ssock, connect_packet, connack_packet, "connack") + + rc = 0 ssock.close() finally: diff --git a/test/broker/08-ssl-connect-no-identity.py b/test/broker/08-ssl-connect-no-identity.py index 9be71878..70a0a27c 100755 --- a/test/broker/08-ssl-connect-no-identity.py +++ b/test/broker/08-ssl-connect-no-identity.py @@ -45,10 +45,10 @@ try: ssock = ssl.wrap_socket(sock, ca_certs="../ssl/test-root-ca.crt", cert_reqs=ssl.CERT_REQUIRED) ssock.settimeout(20) ssock.connect(("localhost", port1)) - ssock.send(connect_packet) + + mosq_test.do_send_receive(ssock, connect_packet, connack_packet, "connack") - if mosq_test.expect_packet(ssock, "connack", connack_packet): - rc = 0 + rc = 0 ssock.close() finally: diff --git a/test/broker/08-tls-psk-bridge.py b/test/broker/08-tls-psk-bridge.py index 22eaabe9..b0d2cfb9 100755 --- a/test/broker/08-tls-psk-bridge.py +++ b/test/broker/08-tls-psk-bridge.py @@ -72,16 +72,17 @@ bridge = mosq_test.start_broker(filename=os.path.basename(__file__)+'_bridge', c pub = None try: sock = mosq_test.do_client_connect(connect_packet, connack_packet, timeout=30, port=port1) - sock.send(subscribe_packet) - if mosq_test.expect_packet(sock, "suback", suback_packet): - pub = subprocess.Popen(['./c/08-tls-psk-bridge.test', str(port3)], env=env, stdout=subprocess.PIPE, stderr=subprocess.PIPE) - if pub.wait(): - raise ValueError - (stdo, stde) = pub.communicate() + mosq_test.do_send_receive(sock, subscribe_packet, suback_packet, "suback") + + pub = subprocess.Popen(['./c/08-tls-psk-bridge.test', str(port3)], env=env, stdout=subprocess.PIPE, stderr=subprocess.PIPE) + if pub.wait(): + raise ValueError + (stdo, stde) = pub.communicate() + + if mosq_test.expect_packet(sock, "publish", publish_packet): + rc = 0 - if mosq_test.expect_packet(sock, "publish", publish_packet): - rc = 0 sock.close() finally: os.remove(conf_file1) diff --git a/test/broker/08-tls-psk-pub.py b/test/broker/08-tls-psk-pub.py index 7c56c44a..34994416 100755 --- a/test/broker/08-tls-psk-pub.py +++ b/test/broker/08-tls-psk-pub.py @@ -56,16 +56,16 @@ broker = mosq_test.start_broker(filename=os.path.basename(__file__), use_conf=Tr try: sock = mosq_test.do_client_connect(connect_packet, connack_packet, timeout=20, port=port2) - sock.send(subscribe_packet) + mosq_test.do_send_receive(sock, subscribe_packet, suback_packet, "suback") - if mosq_test.expect_packet(sock, "suback", suback_packet): - pub = subprocess.Popen(['./c/08-tls-psk-pub.test', str(port1)], env=env, stdout=subprocess.PIPE, stderr=subprocess.PIPE) - if pub.wait(): - raise ValueError - (stdo, stde) = pub.communicate() + pub = subprocess.Popen(['./c/08-tls-psk-pub.test', str(port1)], env=env, stdout=subprocess.PIPE, stderr=subprocess.PIPE) + if pub.wait(): + raise ValueError + (stdo, stde) = pub.communicate() + + if mosq_test.expect_packet(sock, "publish", publish_packet): + rc = 0 - if mosq_test.expect_packet(sock, "publish", publish_packet): - rc = 0 sock.close() finally: os.remove(conf_file) diff --git a/test/broker/09-plugin-auth-acl-sub.py b/test/broker/09-plugin-auth-acl-sub.py index a15eba39..838705bb 100755 --- a/test/broker/09-plugin-auth-acl-sub.py +++ b/test/broker/09-plugin-auth-acl-sub.py @@ -37,12 +37,11 @@ broker = mosq_test.start_broker(filename=os.path.basename(__file__), use_conf=Tr try: sock = mosq_test.do_client_connect(connect_packet, connack_packet, timeout=20, port=port) - sock.send(subscribe_packet) + mosq_test.do_send_receive(sock, subscribe_packet, suback_packet, "suback") - if mosq_test.expect_packet(sock, "suback", suback_packet): - sock.send(subscribe_packet_fail) - if mosq_test.expect_packet(sock, "suback", suback_packet_fail): - rc = 0 + mosq_test.do_send_receive(sock, subscribe_packet_fail, suback_packet_fail, "suback") + + rc = 0 sock.close() finally: diff --git a/test/broker/10-listener-mount-point.py b/test/broker/10-listener-mount-point.py index 137234e7..47fd0766 100755 --- a/test/broker/10-listener-mount-point.py +++ b/test/broker/10-listener-mount-point.py @@ -38,16 +38,15 @@ broker = mosq_test.start_broker(filename=os.path.basename(__file__), use_conf=Tr try: sock = mosq_test.do_client_connect(connect_packet, connack_packet, timeout=20, port=port1) - sock.send(subscribe_packet) + mosq_test.do_send_receive(sock, subscribe_packet, suback_packet, "suback") - if mosq_test.expect_packet(sock, "suback", suback_packet): - pub = subprocess.Popen(['./10-listener-mount-point-helper.py', str(port2)], stdout=subprocess.PIPE, stderr=subprocess.PIPE) - pub.wait() - (stdo, stde) = pub.communicate() - # Should have now received a publish command + pub = subprocess.Popen(['./10-listener-mount-point-helper.py', str(port2)], stdout=subprocess.PIPE, stderr=subprocess.PIPE) + pub.wait() + (stdo, stde) = pub.communicate() + # Should have now received a publish command - if mosq_test.expect_packet(sock, "publish", publish_packet): - rc = 0 + if mosq_test.expect_packet(sock, "publish", publish_packet): + rc = 0 sock.close() finally: diff --git a/test/broker/11-persistent-subscription.py b/test/broker/11-persistent-subscription.py index fcbe47aa..492dcfcc 100755 --- a/test/broker/11-persistent-subscription.py +++ b/test/broker/11-persistent-subscription.py @@ -47,23 +47,20 @@ broker = mosq_test.start_broker(filename=os.path.basename(__file__), use_conf=Tr (stdo1, stde1) = ("", "") try: sock = mosq_test.do_client_connect(connect_packet, connack_packet, timeout=20, port=port) - sock.send(subscribe_packet) + mosq_test.do_send_receive(sock, subscribe_packet, suback_packet, "suback") - if mosq_test.expect_packet(sock, "suback", suback_packet): - broker.terminate() - broker.wait() - (stdo1, stde1) = broker.communicate() - sock.close() - broker = mosq_test.start_broker(filename=os.path.basename(__file__), use_conf=True, port=port) + broker.terminate() + broker.wait() + (stdo1, stde1) = broker.communicate() + sock.close() + broker = mosq_test.start_broker(filename=os.path.basename(__file__), use_conf=True, port=port) - sock = mosq_test.do_client_connect(connect_packet, connack_packet2, timeout=20, port=port) + sock = mosq_test.do_client_connect(connect_packet, connack_packet2, timeout=20, port=port) - sock.send(publish_packet) + mosq_test.do_send_receive(sock, publish_packet, puback_packet, "puback") - if mosq_test.expect_packet(sock, "puback", puback_packet): - - if mosq_test.expect_packet(sock, "publish2", publish_packet2): - rc = 0 + if mosq_test.expect_packet(sock, "publish2", publish_packet2): + rc = 0 sock.close() finally: