1
0
mirror of https://github.com/eclipse/mosquitto.git synced 2025-05-09 09:11:11 +08:00

Simplify "expect_packet" tests.

This commit is contained in:
Roger A. Light 2020-08-12 11:06:09 +01:00
parent ba2c00137d
commit 69f84bbca9
218 changed files with 1209 additions and 898 deletions

View File

@ -31,6 +31,8 @@ def do_test(proto_ver):
sock = mosq_test.do_client_connect(connect_packet, connack_packet, port=port) sock = mosq_test.do_client_connect(connect_packet, connack_packet, port=port)
sock.close() sock.close()
rc = 0 rc = 0
except mosq_test.TestError:
pass
finally: finally:
os.remove(conf_file) os.remove(conf_file)
broker.terminate() broker.terminate()

View File

@ -26,6 +26,8 @@ def do_test(proto_ver):
if e.errno == errno.ECONNRESET: if e.errno == errno.ECONNRESET:
# Connection has been closed by peer, this is the expected behaviour # Connection has been closed by peer, this is the expected behaviour
rc = 0 rc = 0
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -55,6 +55,8 @@ try:
props = mqtt5_props.gen_string_pair_prop(mqtt5_props.PROP_USER_PROPERTY, "key", "value") props = mqtt5_props.gen_string_pair_prop(mqtt5_props.PROP_USER_PROPERTY, "key", "value")
disconnect_packet = mosq_test.gen_disconnect(proto_ver=5, reason_code=0, properties=props) disconnect_packet = mosq_test.gen_disconnect(proto_ver=5, reason_code=0, properties=props)
disco_test("disco len>2", disconnect_packet) disco_test("disco len>2", disconnect_packet)
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -22,6 +22,8 @@ def do_test(proto_ver):
rc = 0 rc = 0
except socket.error: except socket.error:
rc = 0 rc = 0
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -20,6 +20,8 @@ def do_test(proto_ver):
sock = mosq_test.do_client_connect(connect_packet, connack_packet, port=port) sock = mosq_test.do_client_connect(connect_packet, connack_packet, port=port)
sock.close() sock.close()
rc = 0 rc = 0
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -16,6 +16,8 @@ try:
sock = mosq_test.do_client_connect(connect_packet, connack_packet, port=port) sock = mosq_test.do_client_connect(connect_packet, connack_packet, port=port)
sock.close() sock.close()
rc = 0 rc = 0
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -22,6 +22,8 @@ def do_test(proto_ver):
# Exception occurs if connack packet returned # Exception occurs if connack packet returned
rc = 0 rc = 0
sock.close() sock.close()
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -17,6 +17,8 @@ try:
sock.close() sock.close()
rc = 0 rc = 0
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -19,6 +19,8 @@ except socket.error as e:
if e.errno == errno.ECONNRESET: if e.errno == errno.ECONNRESET:
# Connection has been closed by peer, this is the expected behaviour # Connection has been closed by peer, this is the expected behaviour
rc = 0 rc = 0
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -17,6 +17,8 @@ def do_test(proto_ver):
sock = mosq_test.do_client_connect(connect_packet, connack_packet, port=port) sock = mosq_test.do_client_connect(connect_packet, connack_packet, port=port)
sock.close() sock.close()
rc = 0 rc = 0
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -22,6 +22,8 @@ def do_test(proto_ver):
# Exception occurs if connack packet returned # Exception occurs if connack packet returned
rc = 0 rc = 0
sock.close() sock.close()
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -22,6 +22,8 @@ def do_test(proto_ver):
sock = mosq_test.do_client_connect(connect_packet, b"", port=port) sock = mosq_test.do_client_connect(connect_packet, b"", port=port)
sock.close() sock.close()
rc = 0 rc = 0
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -31,6 +31,8 @@ def do_test(proto_ver):
sock = mosq_test.do_client_connect(connect_packet, connack_packet, port=port) sock = mosq_test.do_client_connect(connect_packet, connack_packet, port=port)
sock.close() sock.close()
rc = 0 rc = 0
except mosq_test.TestError:
pass
finally: finally:
os.remove(conf_file) os.remove(conf_file)
broker.terminate() broker.terminate()

View File

@ -53,6 +53,8 @@ def do_test(proto_ver):
sock1.close() sock1.close()
rc = 0 rc = 0
except mosq_test.TestError:
pass
finally: finally:
os.remove(conf_file) os.remove(conf_file)
os.remove(pw_file) os.remove(pw_file)

View File

@ -33,6 +33,8 @@ def do_test(proto_ver):
sock.close() sock.close()
rc = 0 rc = 0
except mosq_test.TestError:
pass
finally: finally:
os.remove(conf_file) os.remove(conf_file)
broker.terminate() broker.terminate()

View File

@ -29,6 +29,8 @@ def do_test(proto_ver):
sock.close() sock.close()
rc = 0 rc = 0
except mosq_test.TestError:
pass
finally: finally:
os.remove(conf_file) os.remove(conf_file)
broker.terminate() broker.terminate()

View File

@ -29,6 +29,8 @@ def do_test(proto_ver):
sock.close() sock.close()
rc = 0 rc = 0
except mosq_test.TestError:
pass
finally: finally:
os.remove(conf_file) os.remove(conf_file)
broker.terminate() broker.terminate()

View File

@ -23,6 +23,8 @@ def do_test(proto_ver):
sock = mosq_test.do_client_connect(connect_packet, b"", port=port) sock = mosq_test.do_client_connect(connect_packet, b"", port=port)
sock.close() sock.close()
rc = 0 rc = 0
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -47,6 +47,8 @@ def do_test(per_listener, proto_ver, clean_start, allow_zero, client_port, expec
sock = mosq_test.do_client_connect(connect_packet, connack_packet, port=client_port) sock = mosq_test.do_client_connect(connect_packet, connack_packet, port=client_port)
sock.close() sock.close()
rc = 0 rc = 0
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -94,33 +94,35 @@ try:
mosq_test.do_send_receive(sock5, subscribe5_packet, suback5_packet, "suback5") mosq_test.do_send_receive(sock5, subscribe5_packet, suback5_packet, "suback5")
sock1.send(publish1_packet) sock1.send(publish1_packet)
if mosq_test.expect_packet(sock1, "publish1 1", publish1_packet): mosq_test.expect_packet(sock1, "publish1 1", publish1_packet)
if mosq_test.expect_packet(sock2, "publish1 2", publish1_packet): mosq_test.expect_packet(sock2, "publish1 2", publish1_packet)
if mosq_test.expect_packet(sock3, "publish1 3", publish1_packet): mosq_test.expect_packet(sock3, "publish1 3", publish1_packet)
sock1.send(publish2_packet) sock1.send(publish2_packet)
if mosq_test.expect_packet(sock1, "publish2 1", publish2_packet): mosq_test.expect_packet(sock1, "publish2 1", publish2_packet)
if mosq_test.expect_packet(sock3, "publish2 3", publish2_packet): mosq_test.expect_packet(sock3, "publish2 3", publish2_packet)
if mosq_test.expect_packet(sock4, "publish2 4", publish2_packet): mosq_test.expect_packet(sock4, "publish2 4", publish2_packet)
sock1.send(publish3_packet) sock1.send(publish3_packet)
if mosq_test.expect_packet(sock1, "publish3 1", publish3_packet): mosq_test.expect_packet(sock1, "publish3 1", publish3_packet)
if mosq_test.expect_packet(sock3, "publish3 3", publish3_packet): mosq_test.expect_packet(sock3, "publish3 3", publish3_packet)
if mosq_test.expect_packet(sock5, "publish3 5", publish3_packet): mosq_test.expect_packet(sock5, "publish3 5", publish3_packet)
mosq_test.do_send_receive(sock1, unsubscribe1_packet, unsuback1_packet, "unsuback1") mosq_test.do_send_receive(sock1, unsubscribe1_packet, unsuback1_packet, "unsuback1")
mosq_test.do_send_receive(sock2, unsubscribe2_packet, unsuback2_packet, "unsuback2") mosq_test.do_send_receive(sock2, unsubscribe2_packet, unsuback2_packet, "unsuback2")
mosq_test.do_send_receive(sock3, unsubscribe3a_packet, unsuback3a_packet, "unsuback3a") mosq_test.do_send_receive(sock3, unsubscribe3a_packet, unsuback3a_packet, "unsuback3a")
mosq_test.do_send_receive(sock3, unsubscribe3b_packet, unsuback3b_packet, "unsuback3b") mosq_test.do_send_receive(sock3, unsubscribe3b_packet, unsuback3b_packet, "unsuback3b")
mosq_test.do_send_receive(sock4, unsubscribe4_packet, unsuback4_packet, "unsuback4") mosq_test.do_send_receive(sock4, unsubscribe4_packet, unsuback4_packet, "unsuback4")
mosq_test.do_send_receive(sock5, unsubscribe5_packet, unsuback5_packet, "unsuback5") mosq_test.do_send_receive(sock5, unsubscribe5_packet, unsuback5_packet, "unsuback5")
rc = 0 rc = 0
sock1.close() sock1.close()
sock2.close() sock2.close()
sock3.close() sock3.close()
sock4.close() sock4.close()
sock5.close() sock5.close()
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -46,6 +46,8 @@ try:
rc = 0 rc = 0
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -31,6 +31,8 @@ def do_test(topic, succeeds):
rc = 0 rc = 0
sock.close() sock.close()
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -43,6 +43,8 @@ def do_test():
rc = 0 rc = 0
sock.close() sock.close()
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -53,19 +53,21 @@ def do_test():
# Expect a message after this, because it is the first subscribe # Expect a message after this, because it is the first subscribe
mosq_test.do_send_receive(sock, subscribe2_packet, suback2_packet, "suback2") mosq_test.do_send_receive(sock, subscribe2_packet, suback2_packet, "suback2")
if mosq_test.expect_packet(sock, "publish2r1", publish2r1_packet): mosq_test.expect_packet(sock, "publish2r1", publish2r1_packet)
# Don't expect a message after this, it is the second subscribe # Don't expect a message after this, it is the second subscribe
mosq_test.do_send_receive(sock, subscribe2_packet, suback2_packet, "suback2") mosq_test.do_send_receive(sock, subscribe2_packet, suback2_packet, "suback2")
# Always expect a message after this # Always expect a message after this
mosq_test.do_send_receive(sock, subscribe1_packet, suback1_packet, "suback1") mosq_test.do_send_receive(sock, subscribe1_packet, suback1_packet, "suback1")
if mosq_test.expect_packet(sock, "publish1r1", publish1r1_packet): mosq_test.expect_packet(sock, "publish1r1", publish1r1_packet)
# Always expect a message after this # Always expect a message after this
mosq_test.do_send_receive(sock, subscribe1_packet, suback1_packet, "suback1") mosq_test.do_send_receive(sock, subscribe1_packet, suback1_packet, "suback1")
if mosq_test.expect_packet(sock, "publish1r1", publish1r2_packet): mosq_test.expect_packet(sock, "publish1r1", publish1r2_packet)
rc = 0 rc = 0
sock.close() sock.close()
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -93,6 +93,8 @@ def do_test(proto_ver):
rc = 0 rc = 0
sock.close() sock.close()
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -23,10 +23,12 @@ def do_test():
sock = mosq_test.do_client_connect(connect_packet, connack_packet, timeout=5, port=port) sock = mosq_test.do_client_connect(connect_packet, connack_packet, timeout=5, port=port)
sock.send(publish1_packet) sock.send(publish1_packet)
if mosq_test.expect_packet(sock, "disconnect", disconnect_packet): mosq_test.expect_packet(sock, "disconnect", disconnect_packet)
rc = 0 rc = 0
sock.close() sock.close()
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -39,11 +39,13 @@ def do_test():
sock1.send(publish2s_packet) sock1.send(publish2s_packet)
if mosq_test.expect_packet(sock2, "publish2r", publish2r_packet): mosq_test.expect_packet(sock2, "publish2r", publish2r_packet)
rc = 0 rc = 0
sock1.close() sock1.close()
sock2.close() sock2.close()
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -28,6 +28,8 @@ def do_test(proto_ver):
rc = 0 rc = 0
sock.close() sock.close()
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -47,18 +47,20 @@ def do_test(proto_ver):
helper(port, proto_ver) helper(port, proto_ver)
if mosq_test.expect_packet(sock, "publish 1r", publish1r_packet): mosq_test.expect_packet(sock, "publish 1r", publish1r_packet)
sock.send(pubcomp1r_packet) sock.send(pubcomp1r_packet)
sock.send(pingreq_packet) sock.send(pingreq_packet)
p = sock.recv(len(pingresp_packet)) p = sock.recv(len(pingresp_packet))
if len(p) == 0: if len(p) == 0:
rc = 0 rc = 0
sock.close() sock.close()
except socket.error as e: except socket.error as e:
if e.errno == errno.ECONNRESET: if e.errno == errno.ECONNRESET:
# Connection has been closed by peer, this is the expected behaviour # Connection has been closed by peer, this is the expected behaviour
rc = 0 rc = 0
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -44,18 +44,20 @@ def do_test(proto_ver):
helper(port, proto_ver) helper(port, proto_ver)
if mosq_test.expect_packet(sock, "publish 1r", publish1r_packet): mosq_test.expect_packet(sock, "publish 1r", publish1r_packet)
sock.send(pubrec1r_packet) sock.send(pubrec1r_packet)
sock.send(pingreq_packet) sock.send(pingreq_packet)
p = sock.recv(len(pingresp_packet)) p = sock.recv(len(pingresp_packet))
if len(p) == 0: if len(p) == 0:
rc = 0 rc = 0
sock.close() sock.close()
except socket.error as e: except socket.error as e:
if e.errno == errno.ECONNRESET: if e.errno == errno.ECONNRESET:
# Connection has been closed by peer, this is the expected behaviour # Connection has been closed by peer, this is the expected behaviour
rc = 0 rc = 0
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -56,26 +56,27 @@ def do_test():
sock = mosq_test.do_client_connect(connect_packet, connack_packet, timeout=20, port=port) sock = mosq_test.do_client_connect(connect_packet, connack_packet, timeout=20, port=port)
mosq_test.do_send_receive(sock, subscribe1_packet, suback1_packet, "suback 1-1") mosq_test.do_send_receive(sock, subscribe1_packet, suback1_packet, "suback 1-1")
if mosq_test.expect_packet(sock, "publish 1", publish1_packet): mosq_test.expect_packet(sock, "publish 1", publish1_packet)
sock.send(puback1_packet) sock.send(puback1_packet)
mosq_test.do_send_receive(sock, subscribe2_packet, suback2_packet, "suback 2-1") mosq_test.do_send_receive(sock, subscribe2_packet, suback2_packet, "suback 2-1")
if mosq_test.expect_packet(sock, "publish 2", publish2s_packet): mosq_test.expect_packet(sock, "publish 2", publish2s_packet)
sock.send(puback2s_packet) sock.send(puback2s_packet)
sock.close()
sock.close() time.sleep(5)
sock = mosq_test.do_client_connect(connect_packet, connack_packet, timeout=20, port=port)
time.sleep(5) mosq_test.do_send_receive(sock, subscribe1_packet, suback1_packet, "suback 1-2")
sock = mosq_test.do_client_connect(connect_packet, connack_packet, timeout=20, port=port) # We shouldn't receive a publish here
mosq_test.do_send_receive(sock, subscribe1_packet, suback1_packet, "suback 1-2") # This will fail if we do receive a publish
# We shouldn't receive a publish here mosq_test.do_send_receive(sock, subscribe2_packet, suback2_packet, "suback 2-2")
# This will fail if we do receive a publish mosq_test.expect_packet(sock, "publish 2", publish2r_packet)
mosq_test.do_send_receive(sock, subscribe2_packet, suback2_packet, "suback 2-2") sock.send(puback2r_packet)
if mosq_test.expect_packet(sock, "publish 2", publish2r_packet): sock.close()
sock.send(puback2r_packet) rc = 0
sock.close()
rc = 0
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -56,6 +56,8 @@ def do_test():
break break
sock.close() sock.close()
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -63,6 +63,8 @@ def do_test():
break break
sock.close() sock.close()
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -44,10 +44,12 @@ def do_test():
mosq_test.do_send_receive(sock, publish_packet, puback_packet, "puback") mosq_test.do_send_receive(sock, publish_packet, puback_packet, "puback")
mosq_test.do_send_receive(sock, publish2_packet, puback2_packet, "puback2") mosq_test.do_send_receive(sock, publish2_packet, puback2_packet, "puback2")
if mosq_test.expect_packet(sock, "publish3", publish3_packet): mosq_test.expect_packet(sock, "publish3", publish3_packet)
rc = 0 rc = 0
sock.close() sock.close()
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -32,10 +32,12 @@ def do_test(proto_ver):
mosq_test.do_send_receive(sock, publish_packet, puback_packet, "puback") mosq_test.do_send_receive(sock, publish_packet, puback_packet, "puback")
if mosq_test.expect_packet(sock, "publish2", publish_packet2): mosq_test.expect_packet(sock, "publish2", publish_packet2)
rc = 0 rc = 0
sock.close() sock.close()
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -87,46 +87,48 @@ def do_test(proto_ver):
mosq_test.do_send_receive(pub, pubrel_packet, pubcomp_packet, "pubcomp1") mosq_test.do_send_receive(pub, pubrel_packet, pubcomp_packet, "pubcomp1")
pub.close() pub.close()
if mosq_test.expect_packet(sub1, "publish1", publish1r_packet): mosq_test.expect_packet(sub1, "publish1", publish1r_packet)
pub = mosq_test.do_client_connect(pub_connect_packet, pub_connack2_packet, timeout=10, port=port) pub = mosq_test.do_client_connect(pub_connect_packet, pub_connack2_packet, timeout=10, port=port)
mosq_test.do_send_receive(pub, publish2s_packet, pubrec_packet, "pubrec2") mosq_test.do_send_receive(pub, publish2s_packet, pubrec_packet, "pubrec2")
mosq_test.do_send_receive(pub, pubrel_packet, pubcomp_packet, "pubcomp2") mosq_test.do_send_receive(pub, pubrel_packet, pubcomp_packet, "pubcomp2")
pub.close() pub.close()
# We expect nothing on sub1 # We expect nothing on sub1
mosq_test.do_ping(sub1, error_string="pingresp1") mosq_test.do_ping(sub1, error_string="pingresp1")
pub = mosq_test.do_client_connect(pub_connect_packet, pub_connack2_packet, timeout=10, port=port) pub = mosq_test.do_client_connect(pub_connect_packet, pub_connack2_packet, timeout=10, port=port)
mosq_test.do_send_receive(pub, publish3s_packet, pubrec_packet, "pubrec3") mosq_test.do_send_receive(pub, publish3s_packet, pubrec_packet, "pubrec3")
mosq_test.do_send_receive(pub, pubrel_packet, pubcomp_packet, "pubcomp3") mosq_test.do_send_receive(pub, pubrel_packet, pubcomp_packet, "pubcomp3")
pub.close() pub.close()
if mosq_test.expect_packet(sub1, "publish3", publish3r_packet): mosq_test.expect_packet(sub1, "publish3", publish3r_packet)
sub2 = mosq_test.do_client_connect(sub2_connect_packet, sub2_connack_packet, timeout=10, port=port) sub2 = mosq_test.do_client_connect(sub2_connect_packet, sub2_connack_packet, timeout=10, port=port)
mosq_test.do_send_receive(sub2, subscribe2_packet, suback2_packet, "suback2") mosq_test.do_send_receive(sub2, subscribe2_packet, suback2_packet, "suback2")
pub = mosq_test.do_client_connect(pub_connect_packet, pub_connack2_packet, timeout=10, port=port) pub = mosq_test.do_client_connect(pub_connect_packet, pub_connack2_packet, timeout=10, port=port)
mosq_test.do_send_receive(pub, publish4s_packet, pubrec_packet, "pubrec4") mosq_test.do_send_receive(pub, publish4s_packet, pubrec_packet, "pubrec4")
mosq_test.do_send_receive(pub, pubrel_packet, pubcomp_packet, "pubcomp4") mosq_test.do_send_receive(pub, pubrel_packet, pubcomp_packet, "pubcomp4")
pub.close() pub.close()
# We expect nothing on sub2 # We expect nothing on sub2
mosq_test.do_ping(sub2, error_string="pingresp2") mosq_test.do_ping(sub2, error_string="pingresp2")
mosq_test.expect_packet(sub1, "publish4", publish4r_packet)
pub = mosq_test.do_client_connect(pub_connect_packet, pub_connack2_packet, timeout=10, port=port)
mosq_test.do_send_receive(pub, publish5s_packet, pubrec_packet, "pubrec5")
mosq_test.do_send_receive(pub, pubrel_packet, pubcomp_packet, "pubcomp5")
pub.close()
# We expect nothing on sub2
mosq_test.do_ping(sub2, error_string="pingresp2")
if mosq_test.expect_packet(sub1, "publish4", publish4r_packet): mosq_test.expect_packet(sub1, "publish5", publish5r_packet)
pub = mosq_test.do_client_connect(pub_connect_packet, pub_connack2_packet, timeout=10, port=port) rc = 0
mosq_test.do_send_receive(pub, publish5s_packet, pubrec_packet, "pubrec5")
mosq_test.do_send_receive(pub, pubrel_packet, pubcomp_packet, "pubcomp5")
pub.close()
# We expect nothing on sub2 sub2.close()
mosq_test.do_ping(sub2, error_string="pingresp2")
if mosq_test.expect_packet(sub1, "publish5", publish5r_packet):
rc = 0
sub2.close()
sub1.close() sub1.close()
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -47,18 +47,20 @@ def do_test(proto_ver):
helper(port, proto_ver) helper(port, proto_ver)
if mosq_test.expect_packet(sock, "publish 1r", publish1r_packet): mosq_test.expect_packet(sock, "publish 1r", publish1r_packet)
sock.send(puback1r_packet) sock.send(puback1r_packet)
sock.send(pingreq_packet) sock.send(pingreq_packet)
p = sock.recv(len(pingresp_packet)) p = sock.recv(len(pingresp_packet))
if len(p) == 0: if len(p) == 0:
rc = 0 rc = 0
sock.close() sock.close()
except socket.error as e: except socket.error as e:
if e.errno == errno.ECONNRESET: if e.errno == errno.ECONNRESET:
# Connection has been closed by peer, this is the expected behaviour # Connection has been closed by peer, this is the expected behaviour
rc = 0 rc = 0
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -45,19 +45,21 @@ def do_test(proto_ver):
mosq_test.do_send_receive(helper, pubrel1s_packet, pubcomp1s_packet, "pubcomp 1s") mosq_test.do_send_receive(helper, pubrel1s_packet, pubcomp1s_packet, "pubcomp 1s")
helper.close() helper.close()
if mosq_test.expect_packet(sock, "publish 1r", publish1r_packet): mosq_test.expect_packet(sock, "publish 1r", publish1r_packet)
mosq_test.do_send_receive(sock, pubrec1s_packet, pubrel1s_packet, "pubrel 1r") mosq_test.do_send_receive(sock, pubrec1s_packet, pubrel1s_packet, "pubrel 1r")
sock.send(puback1r_packet) sock.send(puback1r_packet)
sock.send(pingreq_packet) sock.send(pingreq_packet)
p = sock.recv(len(pingresp_packet)) p = sock.recv(len(pingresp_packet))
if len(p) == 0: if len(p) == 0:
rc = 0 rc = 0
sock.close() sock.close()
except socket.error as e: except socket.error as e:
if e.errno == errno.ECONNRESET: if e.errno == errno.ECONNRESET:
# Connection has been closed by peer, this is the expected behaviour # Connection has been closed by peer, this is the expected behaviour
rc = 0 rc = 0
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -47,18 +47,20 @@ def do_test(proto_ver):
helper(port, proto_ver) helper(port, proto_ver)
if mosq_test.expect_packet(sock, "publish 1r", publish1r_packet): mosq_test.expect_packet(sock, "publish 1r", publish1r_packet)
sock.send(pubcomp1r_packet) sock.send(pubcomp1r_packet)
sock.send(pingreq_packet) sock.send(pingreq_packet)
p = sock.recv(len(pingresp_packet)) p = sock.recv(len(pingresp_packet))
if len(p) == 0: if len(p) == 0:
rc = 0 rc = 0
sock.close() sock.close()
except socket.error as e: except socket.error as e:
if e.errno == errno.ECONNRESET: if e.errno == errno.ECONNRESET:
# Connection has been closed by peer, this is the expected behaviour # Connection has been closed by peer, this is the expected behaviour
rc = 0 rc = 0
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -60,15 +60,17 @@ def do_test():
helper(port) helper(port)
# Should have now received a publish command # Should have now received a publish command
if mosq_test.expect_packet(sock, "publish 1", publish_1_packet): mosq_test.expect_packet(sock, "publish 1", publish_1_packet)
sock.send(pubrec_1_packet) sock.send(pubrec_1_packet)
if mosq_test.expect_packet(sock, "publish 2", publish_2_packet): mosq_test.expect_packet(sock, "publish 2", publish_2_packet)
mosq_test.do_send_receive(sock, pubrec_2_packet, pubrel_2_packet, "pubrel 2") mosq_test.do_send_receive(sock, pubrec_2_packet, pubrel_2_packet, "pubrel 2")
sock.send(pubcomp_2_packet) sock.send(pubcomp_2_packet)
rc = 0 rc = 0
sock.close() sock.close()
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -47,21 +47,23 @@ def do_test():
pub.wait() pub.wait()
(stdo, stde) = pub.communicate() (stdo, stde) = pub.communicate()
if mosq_test.expect_packet(sock, "publish1", publish_packet1): mosq_test.expect_packet(sock, "publish1", publish_packet1)
mosq_test.do_send_receive(sock, pubrec_packet1, pubrel_packet1, "pubrel1") mosq_test.do_send_receive(sock, pubrec_packet1, pubrel_packet1, "pubrel1")
sock.send(pubcomp_packet1) sock.send(pubcomp_packet1)
if mosq_test.expect_packet(sock, "publish2", publish_packet2): mosq_test.expect_packet(sock, "publish2", publish_packet2)
mosq_test.do_send_receive(sock, pubrec_packet2, pubrel_packet2, "pubrel2") mosq_test.do_send_receive(sock, pubrec_packet2, pubrel_packet2, "pubrel2")
sock.send(pubcomp_packet2) sock.send(pubcomp_packet2)
if mosq_test.expect_packet(sock, "publish3", publish_packet3): mosq_test.expect_packet(sock, "publish3", publish_packet3)
mosq_test.do_send_receive(sock, pubrec_packet3, pubrel_packet3, "pubrel3") mosq_test.do_send_receive(sock, pubrec_packet3, pubrel_packet3, "pubrel3")
sock.send(pubcomp_packet3) sock.send(pubcomp_packet3)
rc = 0 rc = 0
sock.close() sock.close()
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -50,21 +50,23 @@ def do_test(proto_ver):
pub.wait() pub.wait()
(stdo, stde) = pub.communicate() (stdo, stde) = pub.communicate()
if mosq_test.expect_packet(sock, "publish1", publish_packet1): mosq_test.expect_packet(sock, "publish1", publish_packet1)
if mosq_test.expect_packet(sock, "publish2", publish_packet2): mosq_test.expect_packet(sock, "publish2", publish_packet2)
mosq_test.do_send_receive(sock, pubrec_packet1, pubrel_packet1, "pubrel1") mosq_test.do_send_receive(sock, pubrec_packet1, pubrel_packet1, "pubrel1")
sock.send(pubcomp_packet1) sock.send(pubcomp_packet1)
if mosq_test.expect_packet(sock, "publish3", publish_packet3): mosq_test.expect_packet(sock, "publish3", publish_packet3)
mosq_test.do_send_receive(sock, pubrec_packet2, pubrel_packet2, "pubrel2") mosq_test.do_send_receive(sock, pubrec_packet2, pubrel_packet2, "pubrel2")
sock.send(pubcomp_packet2) sock.send(pubcomp_packet2)
mosq_test.do_send_receive(sock, pubrec_packet3, pubrel_packet3, "pubrel3") mosq_test.do_send_receive(sock, pubrec_packet3, pubrel_packet3, "pubrel3")
sock.send(pubcomp_packet3) sock.send(pubcomp_packet3)
rc = 0 rc = 0
sock.close() sock.close()
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -49,6 +49,8 @@ def do_test(proto_ver):
rc = 0 rc = 0
sock.close() sock.close()
except mosq_test.TestError:
pass
finally: finally:
if rc: if rc:
print(stde.decode('utf-8')) print(stde.decode('utf-8'))

View File

@ -37,13 +37,15 @@ def do_test(proto_ver):
mosq_test.do_send_receive(sock, publish_packet, pubrec_packet, "pubrec") mosq_test.do_send_receive(sock, publish_packet, pubrec_packet, "pubrec")
mosq_test.do_send_receive(sock, pubrel_packet, pubcomp_packet, "pubcomp") mosq_test.do_send_receive(sock, pubrel_packet, pubcomp_packet, "pubcomp")
if mosq_test.expect_packet(sock, "publish2", publish_packet2): mosq_test.expect_packet(sock, "publish2", publish_packet2)
mosq_test.do_send_receive(sock, pubrec_packet2, pubrel_packet2, "pubrel2") mosq_test.do_send_receive(sock, pubrec_packet2, pubrel_packet2, "pubrel2")
sock.send(pubcomp_packet2) sock.send(pubcomp_packet2)
# Broker side of flow complete so can quit here. # Broker side of flow complete so can quit here.
rc = 0 rc = 0
sock.close() sock.close()
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -29,6 +29,8 @@ def do_test(proto_ver):
rc = 0 rc = 0
sock.close() sock.close()
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -34,6 +34,8 @@ def do_test(proto_ver):
rc = 0 rc = 0
sock.close() sock.close()
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -30,6 +30,8 @@ def do_test(proto_ver):
rc = 0 rc = 0
sock.close() sock.close()
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -69,10 +69,12 @@ def do_test(proto_ver):
pub_sock = mosq_test.do_client_connect(connect_packet_pub, connack_packet_pub, port=port) pub_sock = mosq_test.do_client_connect(connect_packet_pub, connack_packet_pub, port=port)
mosq_test.do_send_receive(pub_sock, publish_packet, puback_packet, "publish") mosq_test.do_send_receive(pub_sock, publish_packet, puback_packet, "publish")
if mosq_test.expect_packet(sub_sock, "publish receive", publish_packet): mosq_test.expect_packet(sub_sock, "publish receive", publish_packet)
rc = 0 rc = 0
sub_sock.close() sub_sock.close()
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -26,6 +26,8 @@ def do_test(proto_ver):
rc = 0 rc = 0
sock.close() sock.close()
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -24,6 +24,8 @@ def do_test(proto_ver):
rc = 0 rc = 0
sock.close() sock.close()
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -24,6 +24,8 @@ def do_test(proto_ver):
rc = 0 rc = 0
sock.close() sock.close()
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -31,6 +31,8 @@ def do_test(proto_ver):
rc = 0 rc = 0
sock.close() sock.close()
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -28,6 +28,8 @@ def do_test(proto_ver):
rc = 0 rc = 0
sock.close() sock.close()
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -27,6 +27,8 @@ def do_test(proto_ver):
rc = 0 rc = 0
sock.close() sock.close()
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -33,6 +33,8 @@ def do_test(proto_ver):
rc = 0 rc = 0
sock.close() sock.close()
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -27,6 +27,8 @@ def do_test(proto_ver):
rc = 0 rc = 0
sock.close() sock.close()
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -39,15 +39,15 @@ def pattern_test(sub_topic, pub_topic):
helper(port, pub_topic) helper(port, pub_topic)
if mosq_test.expect_packet(sock, "publish", publish_packet): 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, unsubscribe_packet, unsuback_packet, "unsuback")
mosq_test.do_send_receive(sock, subscribe_packet, suback_packet, "suback")
mosq_test.do_send_receive(sock, subscribe_packet, suback_packet, "suback") 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() sock.close()
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -48,23 +48,25 @@ def do_test(proto_ver):
helper(port) helper(port)
# Should have now received a publish command # Should have now received a publish command
if mosq_test.expect_packet(sock, "publish", publish_packet): mosq_test.expect_packet(sock, "publish", publish_packet)
# Send our outgoing message. When we disconnect the broker # Send our outgoing message. When we disconnect the broker
# should get rid of it and assume we're going to retry. # should get rid of it and assume we're going to retry.
sock.send(publish2_packet) sock.send(publish2_packet)
sock.close() sock.close()
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.settimeout(60) # 60 seconds timeout is much longer than 5 seconds message retry. sock.settimeout(60) # 60 seconds timeout is much longer than 5 seconds message retry.
sock.connect(("localhost", port)) sock.connect(("localhost", port))
mosq_test.do_send_receive(sock, connect_packet, connack2_packet, "connack") mosq_test.do_send_receive(sock, connect_packet, connack2_packet, "connack")
if mosq_test.expect_packet(sock, "dup publish", publish_dup_packet): mosq_test.expect_packet(sock, "dup publish", publish_dup_packet)
sock.send(puback_packet) sock.send(puback_packet)
rc = 0 rc = 0
sock.close() sock.close()
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -56,24 +56,26 @@ def do_test(proto_ver):
helper(port) helper(port)
# Should have now received a publish command # Should have now received a publish command
if mosq_test.expect_packet(sock, "publish", publish_packet): mosq_test.expect_packet(sock, "publish", publish_packet)
# Send our outgoing message. When we disconnect the broker # Send our outgoing message. When we disconnect the broker
# should get rid of it and assume we're going to retry. # should get rid of it and assume we're going to retry.
sock.send(publish2_packet) sock.send(publish2_packet)
sock.close() sock.close()
sock = mosq_test.do_client_connect(connect_packet, connack2_packet, port=port) 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.expect_packet(sock, "dup publish", publish_dup_packet)
mosq_test.do_send_receive(sock, pubrec_packet, pubrel_packet, "pubrel") mosq_test.do_send_receive(sock, pubrec_packet, pubrel_packet, "pubrel")
sock.close() sock.close()
sock = mosq_test.do_client_connect(connect_packet, connack2_packet, port=port) sock = mosq_test.do_client_connect(connect_packet, connack2_packet, port=port)
if mosq_test.expect_packet(sock, "dup pubrel", pubrel_packet): mosq_test.expect_packet(sock, "dup pubrel", pubrel_packet)
sock.send(pubcomp_packet) sock.send(pubcomp_packet)
rc = 0 rc = 0
sock.close() sock.close()
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -40,13 +40,15 @@ def len_test(test, puback_packet):
helper(port) helper(port)
# Should have now received a publish command # Should have now received a publish command
if mosq_test.expect_packet(sock, "publish", publish_packet): mosq_test.expect_packet(sock, "publish", publish_packet)
sock.send(puback_packet) sock.send(puback_packet)
mosq_test.do_ping(sock) mosq_test.do_ping(sock)
rc = 0 rc = 0
sock.close() sock.close()
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -47,14 +47,16 @@ def len_test(test, pubrec_packet, pubcomp_packet):
helper(port) helper(port)
# Should have now received a publish command # Should have now received a publish command
if mosq_test.expect_packet(sock, "publish", publish_packet): mosq_test.expect_packet(sock, "publish", publish_packet)
mosq_test.do_send_receive(sock, pubrec_packet, pubrel_packet, "pubrel") mosq_test.do_send_receive(sock, pubrec_packet, pubrel_packet, "pubrel")
sock.send(pubcomp_packet) sock.send(pubcomp_packet)
mosq_test.do_ping(sock) mosq_test.do_ping(sock)
rc = 0 rc = 0
sock.close() sock.close()
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -43,15 +43,17 @@ def do_test(proto_ver):
helper(port) helper(port)
# Should have now received a publish command # Should have now received a publish command
if mosq_test.expect_packet(sock, "publish", publish_packet): mosq_test.expect_packet(sock, "publish", publish_packet)
# Wait for longer than 5 seconds to get republish with dup set # Wait for longer than 5 seconds to get republish with dup set
# This is covered by the 8 second timeout # This is covered by the 8 second timeout
if mosq_test.expect_packet(sock, "dup publish", publish_dup_packet): mosq_test.expect_packet(sock, "dup publish", publish_dup_packet)
sock.send(puback_packet) sock.send(puback_packet)
rc = 0 rc = 0
sock.close() sock.close()
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -48,21 +48,23 @@ def do_test(proto_ver):
helper(port) helper(port)
# Should have now received a publish command # Should have now received a publish command
if mosq_test.expect_packet(sock, "publish", publish_packet): mosq_test.expect_packet(sock, "publish", publish_packet)
# Wait for longer than 5 seconds to get republish with dup set # Wait for longer than 5 seconds to get republish with dup set
# This is covered by the 8 second timeout # This is covered by the 8 second timeout
if mosq_test.expect_packet(sock, "dup publish", publish_dup_packet): mosq_test.expect_packet(sock, "dup publish", publish_dup_packet)
mosq_test.do_send_receive(sock, pubrec_packet, pubrel_packet, "pubrel") mosq_test.do_send_receive(sock, pubrec_packet, pubrel_packet, "pubrel")
# Wait for longer than 5 seconds to get republish with dup set # Wait for longer than 5 seconds to get republish with dup set
# This is covered by the 8 second timeout # This is covered by the 8 second timeout
if mosq_test.expect_packet(sock, "dup pubrel", pubrel_packet): mosq_test.expect_packet(sock, "dup pubrel", pubrel_packet)
sock.send(pubcomp_packet) sock.send(pubcomp_packet)
rc = 0 rc = 0
sock.close() sock.close()
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -49,19 +49,21 @@ def do_test(proto_ver):
sock = mosq_test.do_client_connect(connect_packet, connack2_packet, port=port, connack_error="connack 2") sock = mosq_test.do_client_connect(connect_packet, connack2_packet, port=port, connack_error="connack 2")
sock.send(publish_dup_packet) sock.send(publish_dup_packet)
if mosq_test.expect_packet(sock, "pubrec", pubrec_packet): mosq_test.expect_packet(sock, "pubrec", pubrec_packet)
mosq_test.do_send_receive(sock, pubrel_packet, pubcomp_packet, "pubcomp") mosq_test.do_send_receive(sock, pubrel_packet, pubcomp_packet, "pubcomp")
# Again, pretend we didn't receive this pubcomp # Again, pretend we didn't receive this pubcomp
sock.close() sock.close()
sock = mosq_test.do_client_connect(connect_packet, connack2_packet, port=port) sock = mosq_test.do_client_connect(connect_packet, connack2_packet, port=port)
mosq_test.do_send_receive(sock, pubrel_dup_packet, pubcomp_packet, "pubcomp") mosq_test.do_send_receive(sock, pubrel_dup_packet, pubcomp_packet, "pubcomp")
rc = 0 rc = 0
sock.close() sock.close()
helper.close() helper.close()
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -30,6 +30,8 @@ def len_test(test, pubrel_packet):
rc = 0 rc = 0
sock.close() sock.close()
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -28,12 +28,14 @@ def do_test(port):
# Timeout is 8 seconds which means the broker should repeat the PUBREC. # Timeout is 8 seconds which means the broker should repeat the PUBREC.
if mosq_test.expect_packet(sock, "pubrec", pubrec_packet): mosq_test.expect_packet(sock, "pubrec", pubrec_packet)
mosq_test.do_send_receive(sock, pubrel_packet, pubcomp_packet, "pubcomp") mosq_test.do_send_receive(sock, pubrel_packet, pubcomp_packet, "pubcomp")
rc = 0 rc = 0
sock.close() sock.close()
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -35,6 +35,8 @@ try:
rc = 0 rc = 0
sock.close() sock.close()
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -23,6 +23,8 @@ try:
rc = 0 rc = 0
sock.close() sock.close()
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -34,6 +34,8 @@ def do_test(proto_ver):
rc = 0 rc = 0
sock.close() sock.close()
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -31,6 +31,8 @@ def do_test(proto_ver):
rc = 0 rc = 0
sock.close() sock.close()
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -32,6 +32,8 @@ def do_test(proto_ver):
rc = 0 rc = 0
sock.close() sock.close()
except mosq_test.TestError:
pass
finally: finally:
os.remove(conf_file) os.remove(conf_file)
broker.terminate() broker.terminate()

View File

@ -61,6 +61,8 @@ try:
rc = 0 rc = 0
sock.close() sock.close()
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -147,6 +147,8 @@ try:
raise ValueError raise ValueError
rc = 0 rc = 0
except mosq_test.TestError:
pass
finally: finally:
cq.put("quit") cq.put("quit")
brokerMonitor.join() brokerMonitor.join()

View File

@ -38,6 +38,8 @@ def do_test(proto_ver):
rc = 0 rc = 0
sock.close() sock.close()
except mosq_test.TestError:
pass
finally: finally:
os.remove(conf_file) os.remove(conf_file)
broker.terminate() broker.terminate()

View File

@ -27,6 +27,9 @@ def do_test(proto_ver):
rc = 0 rc = 0
sock.close() sock.close()
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -37,6 +37,8 @@ def do_test(proto_ver):
rc = 0 rc = 0
sock.close() sock.close()
except mosq_test.TestError:
pass
finally: finally:
os.remove(conf_file) os.remove(conf_file)
broker.terminate() broker.terminate()

View File

@ -27,6 +27,8 @@ def do_test(proto_ver):
rc = 0 rc = 0
sock.close() sock.close()
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -73,25 +73,27 @@ def do_test(proto_ver, per_listener, username):
sock = mosq_test.do_client_connect(connect2_packet, connack2_packet, port=port2) sock = mosq_test.do_client_connect(connect2_packet, connack2_packet, port=port2)
mosq_test.do_send_receive(sock, subscribe_packet, suback_packet, "suback 1") mosq_test.do_send_receive(sock, subscribe_packet, suback_packet, "suback 1")
if mosq_test.expect_packet(sock, "publish", publish_packet): mosq_test.expect_packet(sock, "publish", publish_packet)
sock.close() sock.close()
# Remove "write" ability # Remove "write" ability
write_acl_2(acl_file, username) write_acl_2(acl_file, username)
broker.terminate() broker.terminate()
broker.wait() broker.wait()
if os.path.isfile(persistence_file) == False: if os.path.isfile(persistence_file) == False:
raise FileNotFoundError("Persistence file not written") raise FileNotFoundError("Persistence file not written")
broker = mosq_test.start_broker(filename=os.path.basename(__file__), use_conf=True, port=port1) broker = mosq_test.start_broker(filename=os.path.basename(__file__), use_conf=True, port=port1)
sock = mosq_test.do_client_connect(connect2_packet, connack2_packet, port=port2) sock = mosq_test.do_client_connect(connect2_packet, connack2_packet, port=port2)
mosq_test.do_send_receive(sock, subscribe_packet, suback_packet, "suback 2") mosq_test.do_send_receive(sock, subscribe_packet, suback_packet, "suback 2")
# If we receive the retained message here, it is a failure. # If we receive the retained message here, it is a failure.
mosq_test.do_ping(sock) mosq_test.do_ping(sock)
rc = 0 rc = 0
sock.close() sock.close()
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -61,23 +61,25 @@ def do_test(proto_ver, per_listener, username):
sock = mosq_test.do_client_connect(connect_packet, connack_packet, port=port) sock = mosq_test.do_client_connect(connect_packet, connack_packet, port=port)
mosq_test.do_send_receive(sock, subscribe_packet, suback_packet, "suback 1") mosq_test.do_send_receive(sock, subscribe_packet, suback_packet, "suback 1")
if mosq_test.expect_packet(sock, "publish", publish_packet): mosq_test.expect_packet(sock, "publish", publish_packet)
sock.close() sock.close()
# Remove "write" ability # Remove "write" ability
write_acl_2(acl_file, username) write_acl_2(acl_file, username)
broker.terminate() broker.terminate()
broker.wait() broker.wait()
broker = mosq_test.start_broker(filename=os.path.basename(__file__), use_conf=True, port=port) broker = mosq_test.start_broker(filename=os.path.basename(__file__), use_conf=True, port=port)
sock = mosq_test.do_client_connect(connect_packet, connack_packet, port=port) sock = mosq_test.do_client_connect(connect_packet, connack_packet, port=port)
mosq_test.do_send_receive(sock, subscribe_packet, suback_packet, "suback 2") mosq_test.do_send_receive(sock, subscribe_packet, suback_packet, "suback 2")
# If we receive the retained message here, it is a failure. # If we receive the retained message here, it is a failure.
mosq_test.do_ping(sock) mosq_test.do_ping(sock)
rc = 0 rc = 0
sock.close() sock.close()
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -49,20 +49,22 @@ def do_test(proto_ver, per_listener):
sock = mosq_test.do_client_connect(connect_packet, connack_packet, port=port) sock = mosq_test.do_client_connect(connect_packet, connack_packet, port=port)
mosq_test.do_send_receive(sock, subscribe_packet, suback_packet, "suback 1") mosq_test.do_send_receive(sock, subscribe_packet, suback_packet, "suback 1")
if mosq_test.expect_packet(sock, "publish", publish_packet): mosq_test.expect_packet(sock, "publish", publish_packet)
sock.close() sock.close()
# Remove "write" ability # Remove "write" ability
write_acl_2(acl_file) write_acl_2(acl_file)
broker.send_signal(signal.SIGHUP) broker.send_signal(signal.SIGHUP)
sock = mosq_test.do_client_connect(connect_packet, connack_packet, port=port) sock = mosq_test.do_client_connect(connect_packet, connack_packet, port=port)
mosq_test.do_send_receive(sock, subscribe_packet, suback_packet, "suback 2") mosq_test.do_send_receive(sock, subscribe_packet, suback_packet, "suback 2")
# If we receive the retained message here, it is a failure. # If we receive the retained message here, it is a failure.
mosq_test.do_ping(sock) mosq_test.do_ping(sock)
rc = 0 rc = 0
sock.close() sock.close()
except mosq_test.TestError:
pass
finally: finally:
os.remove(conf_file) os.remove(conf_file)
os.remove(acl_file) os.remove(acl_file)

View File

@ -32,25 +32,27 @@ def do_test(proto_ver):
# Subscribe to topic, we should get the retained message back. # Subscribe to topic, we should get the retained message back.
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, "publish", publish_packet): mosq_test.expect_packet(sock, "publish", publish_packet)
# Now unsubscribe from the topic before we clear the retained # Now unsubscribe from the topic before we clear the retained
# message. # message.
mosq_test.do_send_receive(sock, unsubscribe_packet, unsuback_packet, "unsuback") mosq_test.do_send_receive(sock, unsubscribe_packet, unsuback_packet, "unsuback")
# Now clear the retained message. # Now clear the retained message.
sock.send(retain_clear_packet) sock.send(retain_clear_packet)
# Subscribe to topic, we shouldn't get anything back apart # Subscribe to topic, we shouldn't get anything back apart
# from the SUBACK. # from the SUBACK.
mosq_test.do_send_receive(sock, subscribe_packet, suback_packet, "suback") mosq_test.do_send_receive(sock, subscribe_packet, suback_packet, "suback")
time.sleep(1) time.sleep(1)
# If we do get something back, it should be before this ping, so if # If we do get something back, it should be before this ping, so if
# this succeeds then we're ok. # this succeeds then we're ok.
mosq_test.do_ping(sock) mosq_test.do_ping(sock)
# This is the expected event # This is the expected event
rc = 0 rc = 0
sock.close() sock.close()
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -28,6 +28,8 @@ def do_test(proto_ver):
rc = 0 rc = 0
sock.close() sock.close()
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -29,14 +29,16 @@ def do_test(proto_ver):
sock.send(publish_packet) sock.send(publish_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, "publish", publish_packet): 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, unsubscribe_packet, unsuback_packet, "unsuback")
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, "publish", publish_packet): mosq_test.expect_packet(sock, "publish", publish_packet)
rc = 0 rc = 0
sock.close() sock.close()
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -24,10 +24,12 @@ def do_test(proto_ver):
sock.send(publish_packet) sock.send(publish_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, "publish", publish_packet): mosq_test.expect_packet(sock, "publish", publish_packet)
rc = 0 rc = 0
sock.close() sock.close()
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -32,10 +32,12 @@ def do_test(proto_ver):
mosq_test.do_send_receive(sock, publish_packet, puback_packet, "puback") mosq_test.do_send_receive(sock, publish_packet, puback_packet, "puback")
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, "publish0", publish0_packet): mosq_test.expect_packet(sock, "publish0", publish0_packet)
rc = 0 rc = 0
sock.close() sock.close()
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -36,10 +36,12 @@ def do_test(proto_ver):
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, "publish", publish_packet2): mosq_test.expect_packet(sock, "publish", publish_packet2)
rc = 0 rc = 0
sock.close() sock.close()
except mosq_test.TestError:
pass
finally: finally:
os.remove(conf_file) os.remove(conf_file)
broker.terminate() broker.terminate()

View File

@ -49,11 +49,13 @@ def do_test(proto_ver):
# Now reconnect and expect a publish message. # Now reconnect and expect a publish message.
sock = mosq_test.do_client_connect(connect_packet, connack2_packet, timeout=30, port=port) sock = mosq_test.do_client_connect(connect_packet, connack2_packet, timeout=30, port=port)
if mosq_test.expect_packet(sock, "publish", publish_packet): mosq_test.expect_packet(sock, "publish", publish_packet)
sock.send(puback_packet) sock.send(puback_packet)
rc = 0 rc = 0
sock.close() sock.close()
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -90,6 +90,8 @@ try:
rc = 0 rc = 0
sock.close() sock.close()
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

View File

@ -68,32 +68,34 @@ def do_test(proto_ver):
(bridge, address) = ssock.accept() (bridge, address) = ssock.accept()
bridge.settimeout(20) bridge.settimeout(20)
if mosq_test.expect_packet(bridge, "connect", connect_packet): mosq_test.expect_packet(bridge, "connect", connect_packet)
bridge.send(connack_packet) bridge.send(connack_packet)
if mosq_test.expect_packet(bridge, "subscribe", subscribe_packet): mosq_test.expect_packet(bridge, "subscribe", subscribe_packet)
bridge.send(suback_packet) bridge.send(suback_packet)
bridge.send(publish_packet) bridge.send(publish_packet)
# Bridge doesn't have time to respond but should expect us to retry # Bridge doesn't have time to respond but should expect us to retry
# and so remove PUBACK. # and so remove PUBACK.
bridge.close() bridge.close()
(bridge, address) = ssock.accept() (bridge, address) = ssock.accept()
bridge.settimeout(20) bridge.settimeout(20)
if mosq_test.expect_packet(bridge, "connect", connect_packet): mosq_test.expect_packet(bridge, "connect", connect_packet)
bridge.send(connack_packet) bridge.send(connack_packet)
if mosq_test.expect_packet(bridge, "2nd subscribe", subscribe2_packet): mosq_test.expect_packet(bridge, "2nd subscribe", subscribe2_packet)
bridge.send(suback2_packet) bridge.send(suback2_packet)
# Send a different publish message to make sure the response isn't to the old one. # Send a different publish message to make sure the response isn't to the old one.
bridge.send(publish2_packet) bridge.send(publish2_packet)
if mosq_test.expect_packet(bridge, "puback", puback2_packet): mosq_test.expect_packet(bridge, "puback", puback2_packet)
rc = 0 rc = 0
bridge.close() bridge.close()
except mosq_test.TestError:
pass
finally: finally:
os.remove(conf_file) os.remove(conf_file)
try: try:

View File

@ -68,47 +68,49 @@ def do_test(proto_ver):
(bridge, address) = ssock.accept() (bridge, address) = ssock.accept()
bridge.settimeout(20) bridge.settimeout(20)
if mosq_test.expect_packet(bridge, "connect", connect_packet): mosq_test.expect_packet(bridge, "connect", connect_packet)
bridge.send(connack_packet) bridge.send(connack_packet)
if mosq_test.expect_packet(bridge, "subscribe", subscribe_packet): mosq_test.expect_packet(bridge, "subscribe", subscribe_packet)
bridge.send(suback_packet) bridge.send(suback_packet)
bridge.send(publish_packet) bridge.send(publish_packet)
bridge.close() bridge.close()
(bridge, address) = ssock.accept() (bridge, address) = ssock.accept()
bridge.settimeout(20) bridge.settimeout(20)
if mosq_test.expect_packet(bridge, "connect", connect_packet): mosq_test.expect_packet(bridge, "connect", connect_packet)
bridge.send(connack_packet) bridge.send(connack_packet)
if mosq_test.expect_packet(bridge, "2nd subscribe", subscribe2_packet): mosq_test.expect_packet(bridge, "2nd subscribe", subscribe2_packet)
bridge.send(suback2_packet) bridge.send(suback2_packet)
bridge.send(publish_dup_packet) bridge.send(publish_dup_packet)
if mosq_test.expect_packet(bridge, "pubrec", pubrec_packet): mosq_test.expect_packet(bridge, "pubrec", pubrec_packet)
bridge.send(pubrel_packet) bridge.send(pubrel_packet)
bridge.close() bridge.close()
(bridge, address) = ssock.accept() (bridge, address) = ssock.accept()
bridge.settimeout(20) bridge.settimeout(20)
if mosq_test.expect_packet(bridge, "connect", connect_packet): mosq_test.expect_packet(bridge, "connect", connect_packet)
bridge.send(connack_packet) bridge.send(connack_packet)
if mosq_test.expect_packet(bridge, "3rd subscribe", subscribe3_packet): mosq_test.expect_packet(bridge, "3rd subscribe", subscribe3_packet)
bridge.send(suback3_packet) bridge.send(suback3_packet)
bridge.send(publish_dup_packet) bridge.send(publish_dup_packet)
if mosq_test.expect_packet(bridge, "2nd pubrec", pubrec_packet): mosq_test.expect_packet(bridge, "2nd pubrec", pubrec_packet)
bridge.send(pubrel_packet) bridge.send(pubrel_packet)
if mosq_test.expect_packet(bridge, "pubcomp", pubcomp_packet): mosq_test.expect_packet(bridge, "pubcomp", pubcomp_packet)
rc = 0 rc = 0
bridge.close() bridge.close()
except mosq_test.TestError:
pass
finally: finally:
os.remove(conf_file) os.remove(conf_file)
try: try:

View File

@ -77,18 +77,20 @@ def do_test(proto_ver):
(bridge, address) = ssock.accept() (bridge, address) = ssock.accept()
bridge.settimeout(20) bridge.settimeout(20)
if mosq_test.expect_packet(bridge, "connect", connect_packet): mosq_test.expect_packet(bridge, "connect", connect_packet)
bridge.send(connack_packet) bridge.send(connack_packet)
if mosq_test.expect_packet(bridge, "publish", publish_packet): mosq_test.expect_packet(bridge, "publish", publish_packet)
bridge.send(puback_packet) bridge.send(puback_packet)
# Guard against multiple retained messages of the same type by # Guard against multiple retained messages of the same type by
# sending a pingreq to give us something to expect back. If we get # sending a pingreq to give us something to expect back. If we get
# a publish, it's a fail. # a publish, it's a fail.
mosq_test.do_ping(bridge) mosq_test.do_ping(bridge)
rc = 0 rc = 0
bridge.close() bridge.close()
except mosq_test.TestError:
pass
finally: finally:
os.remove(conf_file) os.remove(conf_file)
try: try:

View File

@ -57,13 +57,15 @@ def do_test(proto_ver):
client.close() client.close()
# We've now sent a message to the broker that should be delivered to us via the bridge # We've now sent a message to the broker that should be delivered to us via the bridge
if mosq_test.expect_packet(bridge, "connect", connect_packet): mosq_test.expect_packet(bridge, "connect", connect_packet)
bridge.send(connack_packet) bridge.send(connack_packet)
if mosq_test.expect_packet(bridge, "publish", publish_packet): mosq_test.expect_packet(bridge, "publish", publish_packet)
rc = 0 rc = 0
bridge.close() bridge.close()
except mosq_test.TestError:
pass
finally: finally:
os.remove(conf_file) os.remove(conf_file)
try: try:

View File

@ -133,6 +133,8 @@ def do_test(proto_ver):
sock.close() sock.close()
bridge.close() bridge.close()
except mosq_test.TestError:
pass
finally: finally:
os.remove(conf_file) os.remove(conf_file)
try: try:

View File

@ -64,39 +64,41 @@ def do_test(proto_ver):
(bridge, address) = ssock.accept() (bridge, address) = ssock.accept()
bridge.settimeout(20) bridge.settimeout(20)
if mosq_test.expect_packet(bridge, "connect", connect_packet): mosq_test.expect_packet(bridge, "connect", connect_packet)
bridge.send(connack_packet) bridge.send(connack_packet)
if mosq_test.expect_packet(bridge, "subscribe", subscribe_packet): mosq_test.expect_packet(bridge, "subscribe", subscribe_packet)
bridge.send(suback_packet) bridge.send(suback_packet)
# Helper # Helper
helper_connect_packet = mosq_test.gen_connect("test-helper", keepalive=keepalive, proto_ver=proto_ver) helper_connect_packet = mosq_test.gen_connect("test-helper", keepalive=keepalive, proto_ver=proto_ver)
helper_connack_packet = mosq_test.gen_connack(rc=0, proto_ver=proto_ver) helper_connack_packet = mosq_test.gen_connack(rc=0, proto_ver=proto_ver)
mid = 128 mid = 128
helper_publish_packet = mosq_test.gen_publish("bridge/disconnect/test", qos=1, mid=mid, payload="disconnect-message", proto_ver=proto_ver) helper_publish_packet = mosq_test.gen_publish("bridge/disconnect/test", qos=1, mid=mid, payload="disconnect-message", proto_ver=proto_ver)
helper_puback_packet = mosq_test.gen_puback(mid, proto_ver=proto_ver) helper_puback_packet = mosq_test.gen_puback(mid, proto_ver=proto_ver)
helper_sock = mosq_test.do_client_connect(helper_connect_packet, helper_connack_packet, port=port2, connack_error="helper connack") helper_sock = mosq_test.do_client_connect(helper_connect_packet, helper_connack_packet, port=port2, connack_error="helper connack")
mosq_test.do_send_receive(helper_sock, publish_packet, puback_packet, "helper puback") mosq_test.do_send_receive(helper_sock, publish_packet, puback_packet, "helper puback")
helper_sock.close() helper_sock.close()
# End helper # End helper
if mosq_test.expect_packet(bridge, "publish", publish_packet): mosq_test.expect_packet(bridge, "publish", publish_packet)
bridge.close() bridge.close()
(bridge, address) = ssock.accept() (bridge, address) = ssock.accept()
bridge.settimeout(20) bridge.settimeout(20)
if mosq_test.expect_packet(bridge, "2nd connect", connect_packet): mosq_test.expect_packet(bridge, "2nd connect", connect_packet)
bridge.send(connack_packet) bridge.send(connack_packet)
if mosq_test.expect_packet(bridge, "2nd subscribe", subscribe2_packet): mosq_test.expect_packet(bridge, "2nd subscribe", subscribe2_packet)
bridge.send(suback2_packet) bridge.send(suback2_packet)
if mosq_test.expect_packet(bridge, "2nd publish", publish_dup_packet): mosq_test.expect_packet(bridge, "2nd publish", publish_dup_packet)
rc = 0 rc = 0
bridge.close() bridge.close()
except mosq_test.TestError:
pass
finally: finally:
os.remove(conf_file) os.remove(conf_file)
try: try:

View File

@ -70,61 +70,63 @@ def do_test(proto_ver):
(bridge, address) = ssock.accept() (bridge, address) = ssock.accept()
bridge.settimeout(20) bridge.settimeout(20)
if mosq_test.expect_packet(bridge, "connect", connect_packet): mosq_test.expect_packet(bridge, "connect", connect_packet)
bridge.send(connack_packet) bridge.send(connack_packet)
if mosq_test.expect_packet(bridge, "subscribe", subscribe_packet): mosq_test.expect_packet(bridge, "subscribe", subscribe_packet)
bridge.send(suback_packet) bridge.send(suback_packet)
# Helper # Helper
helper_connect_packet = mosq_test.gen_connect("test-helper", keepalive=keepalive, proto_ver=proto_ver) helper_connect_packet = mosq_test.gen_connect("test-helper", keepalive=keepalive, proto_ver=proto_ver)
helper_connack_packet = mosq_test.gen_connack(rc=0, proto_ver=proto_ver) helper_connack_packet = mosq_test.gen_connack(rc=0, proto_ver=proto_ver)
mid = 312 mid = 312
helper_publish_packet = mosq_test.gen_publish("bridge/disconnect/test", qos=2, mid=mid, payload="disconnect-message", proto_ver=proto_ver) helper_publish_packet = mosq_test.gen_publish("bridge/disconnect/test", qos=2, mid=mid, payload="disconnect-message", proto_ver=proto_ver)
helper_pubrec_packet = mosq_test.gen_pubrec(mid=mid, proto_ver=proto_ver) helper_pubrec_packet = mosq_test.gen_pubrec(mid=mid, proto_ver=proto_ver)
helper_pubrel_packet = mosq_test.gen_pubrel(mid=mid, proto_ver=proto_ver) helper_pubrel_packet = mosq_test.gen_pubrel(mid=mid, proto_ver=proto_ver)
helper_pubcomp_packet = mosq_test.gen_pubcomp(mid=mid, proto_ver=proto_ver) helper_pubcomp_packet = mosq_test.gen_pubcomp(mid=mid, proto_ver=proto_ver)
helper_sock = mosq_test.do_client_connect(helper_connect_packet, helper_connack_packet, port=port2, connack_error="helper connack") helper_sock = mosq_test.do_client_connect(helper_connect_packet, helper_connack_packet, port=port2, connack_error="helper connack")
mosq_test.do_send_receive(helper_sock, helper_publish_packet, helper_pubrec_packet, "helper pubrec") mosq_test.do_send_receive(helper_sock, helper_publish_packet, helper_pubrec_packet, "helper pubrec")
mosq_test.do_send_receive(helper_sock, helper_pubrel_packet, helper_pubcomp_packet, "helper pubcomp") mosq_test.do_send_receive(helper_sock, helper_pubrel_packet, helper_pubcomp_packet, "helper pubcomp")
helper_sock.close() helper_sock.close()
# End helper # End helper
if mosq_test.expect_packet(bridge, "publish", publish_packet): mosq_test.expect_packet(bridge, "publish", publish_packet)
bridge.close() bridge.close()
(bridge, address) = ssock.accept() (bridge, address) = ssock.accept()
bridge.settimeout(20) bridge.settimeout(20)
if mosq_test.expect_packet(bridge, "connect", connect_packet): mosq_test.expect_packet(bridge, "connect", connect_packet)
bridge.send(connack_packet) bridge.send(connack_packet)
if mosq_test.expect_packet(bridge, "2nd subscribe", subscribe2_packet): mosq_test.expect_packet(bridge, "2nd subscribe", subscribe2_packet)
bridge.send(suback2_packet) bridge.send(suback2_packet)
if mosq_test.expect_packet(bridge, "2nd publish", publish_dup_packet): mosq_test.expect_packet(bridge, "2nd publish", publish_dup_packet)
bridge.send(pubrec_packet) bridge.send(pubrec_packet)
if mosq_test.expect_packet(bridge, "pubrel", pubrel_packet): mosq_test.expect_packet(bridge, "pubrel", pubrel_packet)
bridge.close() bridge.close()
(bridge, address) = ssock.accept() (bridge, address) = ssock.accept()
bridge.settimeout(20) bridge.settimeout(20)
if mosq_test.expect_packet(bridge, "connect", connect_packet): mosq_test.expect_packet(bridge, "connect", connect_packet)
bridge.send(connack_packet) bridge.send(connack_packet)
if mosq_test.expect_packet(bridge, "3rd subscribe", subscribe3_packet): mosq_test.expect_packet(bridge, "3rd subscribe", subscribe3_packet)
bridge.send(suback3_packet) bridge.send(suback3_packet)
if mosq_test.expect_packet(bridge, "2nd pubrel", pubrel_packet): mosq_test.expect_packet(bridge, "2nd pubrel", pubrel_packet)
bridge.send(pubcomp_packet) bridge.send(pubcomp_packet)
rc = 0 rc = 0
bridge.close() bridge.close()
except mosq_test.TestError:
pass
finally: finally:
os.remove(conf_file) os.remove(conf_file)
try: try:

View File

@ -113,6 +113,8 @@ def do_test(proto_ver):
sock.close() sock.close()
bridge.close() bridge.close()
except mosq_test.TestError:
pass
finally: finally:
os.remove(conf_file) os.remove(conf_file)
try: try:

View File

@ -217,6 +217,8 @@ def do_test(proto_ver, cs, lcs=None):
success = True success = True
except mosq_test.TestError:
pass
finally: finally:
os.remove(conf_file_a) os.remove(conf_file_a)
os.remove(conf_file_b) os.remove(conf_file_b)

View File

@ -69,21 +69,23 @@ def do_test(proto_ver):
(conn, address) = sock.accept() (conn, address) = sock.accept()
conn.settimeout(20) conn.settimeout(20)
if mosq_test.expect_packet(conn, "connect", connect_packet): mosq_test.expect_packet(conn, "connect", connect_packet)
conn.send(connack_packet) conn.send(connack_packet)
if mosq_test.expect_packet(conn, "unsubscribe", unsubscribe_packet): mosq_test.expect_packet(conn, "unsubscribe", unsubscribe_packet)
conn.send(unsuback_packet) conn.send(unsuback_packet)
# Send the unexpected puback packet # Send the unexpected puback packet
conn.send(puback_packet_unknown) conn.send(puback_packet_unknown)
# Send a legitimate publish packet to verify everything is still ok # Send a legitimate publish packet to verify everything is still ok
conn.send(publish_packet) conn.send(publish_packet)
if mosq_test.expect_packet(conn, "puback", puback_packet): mosq_test.expect_packet(conn, "puback", puback_packet)
rc = 0 rc = 0
except mosq_test.TestError:
pass
finally: finally:
os.remove(conf_file) os.remove(conf_file)
broker.terminate() broker.terminate()

View File

@ -75,27 +75,29 @@ def do_test(proto_ver):
(conn, address) = sock.accept() (conn, address) = sock.accept()
conn.settimeout(20) conn.settimeout(20)
if mosq_test.expect_packet(conn, "connect", connect_packet): mosq_test.expect_packet(conn, "connect", connect_packet)
conn.send(connack_packet) conn.send(connack_packet)
if mosq_test.expect_packet(conn, "unsubscribe", unsubscribe_packet): mosq_test.expect_packet(conn, "unsubscribe", unsubscribe_packet)
conn.send(unsuback_packet) conn.send(unsuback_packet)
# Send the unexpected pubrec packet # Send the unexpected pubrec packet
conn.send(pubrec_packet_unknown1) conn.send(pubrec_packet_unknown1)
if mosq_test.expect_packet(conn, "pubrel", pubrel_packet_unknown1): mosq_test.expect_packet(conn, "pubrel", pubrel_packet_unknown1)
conn.send(pubrel_packet_unknown2) conn.send(pubrel_packet_unknown2)
if mosq_test.expect_packet(conn, "pubcomp", pubcomp_packet_unknown2): mosq_test.expect_packet(conn, "pubcomp", pubcomp_packet_unknown2)
conn.send(pubcomp_packet_unknown3) conn.send(pubcomp_packet_unknown3)
# Send a legitimate publish packet to verify everything is still ok # Send a legitimate publish packet to verify everything is still ok
conn.send(publish_packet) conn.send(publish_packet)
if mosq_test.expect_packet(conn, "puback", puback_packet): mosq_test.expect_packet(conn, "puback", puback_packet)
rc = 0 rc = 0
except mosq_test.TestError:
pass
finally: finally:
os.remove(conf_file) os.remove(conf_file)
broker.terminate() broker.terminate()

View File

@ -30,6 +30,8 @@ def do_test(proto_ver_connect, proto_ver_msgs, sub_opts):
rc = 0 rc = 0
sock.close() sock.close()
except mosq_test.TestError:
pass
finally: finally:
broker.terminate() broker.terminate()
broker.wait() broker.wait()

Some files were not shown because too many files have changed in this diff Show More