Simplify ping checking in tests.

pull/1600/head
Roger A. Light 6 years ago
parent 7c4947fcf7
commit ff187d0d5b

@ -31,9 +31,6 @@ mid = 1
subscribe_packet = mosq_test.gen_subscribe(mid, topic="will/test", qos=0)
suback_packet = mosq_test.gen_suback(mid, 0)
pingreq_packet = mosq_test.gen_pingreq()
pingresp_packet = mosq_test.gen_pingresp()
connect2_packet = mosq_test.gen_connect("connect-uname-pwd-test", keepalive=keepalive, username="user", password="password9")
connack2_packet = mosq_test.gen_connack(rc=5)
@ -47,7 +44,7 @@ try:
sock2.close()
# If we receive a will here, this is an error
mosq_test.do_send_receive(sock1, pingreq_packet, pingresp_packet)
mosq_test.do_ping(sock1)
sock1.close()
rc = 0

@ -42,9 +42,6 @@ mid=1
publish2r_packet = mosq_test.gen_publish("subpub/kept", mid=mid, qos=1, retain=True, payload="message2", proto_ver=5)
puback2r_packet = mosq_test.gen_puback(mid, proto_ver=5, reason_code=mqtt5_rc.MQTT_RC_NO_MATCHING_SUBSCRIBERS)
pingreq_packet = mosq_test.gen_pingreq()
pingresp_packet = mosq_test.gen_pingresp()
port = mosq_test.get_port()
broker = mosq_test.start_broker(filename=os.path.basename(__file__), port=port)

@ -20,9 +20,6 @@ def len_test(test, puback_packet):
mid = 1
publish_packet = mosq_test.gen_publish("qos1/len/test", qos=1, mid=mid, payload="len-message", proto_ver=5)
pingreq_packet = mosq_test.gen_pingreq()
pingresp_packet = mosq_test.gen_pingresp()
broker = mosq_test.start_broker(filename=os.path.basename(__file__), port=port)
try:
@ -38,7 +35,7 @@ def len_test(test, puback_packet):
if mosq_test.expect_packet(sock, "publish", publish_packet):
sock.send(puback_packet)
mosq_test.do_send_receive(sock, pingreq_packet, pingresp_packet, "pingreq")
mosq_test.do_ping(sock)
rc = 0
sock.close()

@ -21,9 +21,6 @@ def len_test(test, pubrec_packet, pubcomp_packet):
publish_packet = mosq_test.gen_publish("qos2/len/test", qos=2, mid=mid, payload="len-message", proto_ver=5)
pubrel_packet = mosq_test.gen_pubrel(mid)
pingreq_packet = mosq_test.gen_pingreq()
pingresp_packet = mosq_test.gen_pingresp()
broker = mosq_test.start_broker(filename=os.path.basename(__file__), port=port)
try:
@ -40,7 +37,7 @@ def len_test(test, pubrec_packet, pubcomp_packet):
mosq_test.do_send_receive(sock, pubrec_packet, pubrel_packet, "pubrel")
sock.send(pubcomp_packet)
mosq_test.do_send_receive(sock, pingreq_packet, pingresp_packet, "pingresp")
mosq_test.do_ping(sock)
rc = 0
sock.close()

@ -19,9 +19,6 @@ def len_test(test, pubrel_packet):
pubrec_packet = mosq_test.gen_pubrec(mid)
pubcomp_packet = mosq_test.gen_pubcomp(mid)
pingreq_packet = mosq_test.gen_pingreq()
pingresp_packet = mosq_test.gen_pingresp()
broker = mosq_test.start_broker(filename=os.path.basename(__file__), port=port)
try:
@ -30,7 +27,7 @@ def len_test(test, pubrel_packet):
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, pingreq_packet, pingresp_packet, "pingresp")
mosq_test.do_ping(sock)
rc = 0
sock.close()

@ -62,9 +62,6 @@ def do_test(per_listener, username):
subscribe_packet = mosq_test.gen_subscribe(mid, "test/topic", 0)
suback_packet = mosq_test.gen_suback(mid, 0)
pingreq_packet = mosq_test.gen_pingreq()
pingresp_packet = mosq_test.gen_pingresp()
broker = mosq_test.start_broker(filename=os.path.basename(__file__), use_conf=True, port=port1)
try:
@ -88,7 +85,7 @@ def do_test(per_listener, username):
sock = mosq_test.do_client_connect(connect2_packet, connack2_packet, port=port2)
mosq_test.do_send_receive(sock, subscribe_packet, suback_packet, "suback 2")
# If we receive the retained message here, it is a failure.
mosq_test.do_send_receive(sock, pingreq_packet, pingresp_packet, "pingresp")
mosq_test.do_ping(sock)
rc = 0
sock.close()

@ -51,9 +51,6 @@ def do_test(per_listener, username):
subscribe_packet = mosq_test.gen_subscribe(mid, "test/topic", 0)
suback_packet = mosq_test.gen_suback(mid, 0)
pingreq_packet = mosq_test.gen_pingreq()
pingresp_packet = mosq_test.gen_pingresp()
broker = mosq_test.start_broker(filename=os.path.basename(__file__), use_conf=True, port=port)
try:
@ -77,7 +74,7 @@ def do_test(per_listener, username):
sock = mosq_test.do_client_connect(connect_packet, connack_packet, port=port)
mosq_test.do_send_receive(sock, subscribe_packet, suback_packet, "suback 2")
# If we receive the retained message here, it is a failure.
mosq_test.do_send_receive(sock, pingreq_packet, pingresp_packet, "pingresp")
mosq_test.do_ping(sock)
rc = 0
sock.close()

@ -39,9 +39,6 @@ def do_test(per_listener):
subscribe_packet = mosq_test.gen_subscribe(mid, "test/topic", 0)
suback_packet = mosq_test.gen_suback(mid, 0)
pingreq_packet = mosq_test.gen_pingreq()
pingresp_packet = mosq_test.gen_pingresp()
broker = mosq_test.start_broker(filename=os.path.basename(__file__), use_conf=True, port=port)
try:
@ -62,7 +59,7 @@ def do_test(per_listener):
sock = mosq_test.do_client_connect(connect_packet, connack_packet, port=port)
mosq_test.do_send_receive(sock, subscribe_packet, suback_packet, "suback 2")
# If we receive the retained message here, it is a failure.
mosq_test.do_send_receive(sock, pingreq_packet, pingresp_packet, "pingresp")
mosq_test.do_ping(sock)
rc = 0
sock.close()

@ -41,13 +41,12 @@ try:
# 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.")
time.sleep(1)
# If we do get something back, it should be before this ping, so if
# this succeeds then we're ok.
mosq_test.do_ping(sock)
# This is the expected event
rc = 0
sock.close()
finally:

@ -40,9 +40,6 @@ mid = 1
publish_packet = mosq_test.gen_publish("bridge/test", qos=1, mid=mid, payload="message", retain=True)
puback_packet = mosq_test.gen_puback(mid)
pingreq_packet = mosq_test.gen_pingreq()
pingresp_packet = mosq_test.gen_pingresp()
ssock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
ssock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
ssock.settimeout(40)
@ -75,7 +72,7 @@ try:
# Guard against multiple retained messages of the same type by
# sending a pingreq to give us something to expect back. If we get
# a publish, it's a fail.
mosq_test.do_send_receive(bridge, pingreq_packet, pingresp_packet, "pingresp")
mosq_test.do_ping(bridge)
rc = 0
bridge.close()

@ -79,17 +79,11 @@ def test(bridge, sock):
))
return 1
else:
bridge.settimeout(3)
try:
bridge.recv(1)
print("FAIL: Received data when nothing is expected")
print("Fail on cases local_topic=%r, remote_topic=%r" % (
local_topic, remote_topic,
time.sleep(1)
mosq_test.do_ping(bridge,
"FAIL: Received data when nothing is expected\nFail on cases local_topic=%r, remote_topic=%r" % (
local_topic, remote_topic,
))
return 1
except socket.timeout:
pass
bridge.settimeout(20)
return 0
try:

@ -19,9 +19,6 @@ def do_test(proto_ver_connect, proto_ver_msgs, sub_opts):
publish_packet = mosq_test.gen_publish("loop/test", qos=0, payload="message", proto_ver=proto_ver_msgs)
pingreq_packet = mosq_test.gen_pingreq()
pingresp_packet = mosq_test.gen_pingresp()
port = mosq_test.get_port()
broker = mosq_test.start_broker(filename=os.path.basename(__file__), port=port)
@ -31,7 +28,7 @@ def do_test(proto_ver_connect, proto_ver_msgs, sub_opts):
mosq_test.do_send_receive(sock, subscribe_packet, suback_packet, "suback")
sock.send(publish_packet)
mosq_test.do_send_receive(sock, pingreq_packet, pingresp_packet, "pingresp")
mosq_test.do_ping(sock)
rc = 0
sock.close()

@ -25,9 +25,6 @@ def do_test():
subscribe_packet = mosq_test.gen_subscribe(mid, "will/test", 0, proto_ver=5)
suback_packet = mosq_test.gen_suback(mid, 0, proto_ver=5)
pingreq_packet = mosq_test.gen_pingreq()
pingresp_packet = mosq_test.gen_pingresp()
port = mosq_test.get_port()
broker = mosq_test.start_broker(filename=os.path.basename(__file__), port=port)
@ -47,7 +44,7 @@ def do_test():
# whether we get the old will. We should not.
sock2.close()
mosq_test.do_send_receive(sock1, pingreq_packet, pingresp_packet, "pingresp")
mosq_test.do_ping(sock1)
rc = 0
sock1.close()

@ -26,9 +26,6 @@ def do_test(clean_session):
subscribe_packet = mosq_test.gen_subscribe(mid, "will/test", 0, proto_ver=5)
suback_packet = mosq_test.gen_suback(mid, 0, proto_ver=5)
pingreq_packet = mosq_test.gen_pingreq()
pingresp_packet = mosq_test.gen_pingresp()
port = mosq_test.get_port()
broker = mosq_test.start_broker(filename=os.path.basename(__file__), port=port)
@ -45,7 +42,7 @@ def do_test(clean_session):
# The client2 has reconnected within the will delay interval, which has now
# passed. We should not have received the will at this point.
mosq_test.do_send_receive(sock1, pingreq_packet, pingresp_packet, "pingresp")
mosq_test.do_ping(sock1)
rc = 0
sock1.close()

@ -45,14 +45,12 @@ def single_test(port, per_listener, username, topic, expect_deny):
mid=1
publish1r_packet = mosq_test.gen_publish(topic=topic, mid=mid, qos=1, payload="message")
pingreq_packet = mosq_test.gen_pingreq()
pingresp_packet = mosq_test.gen_pingresp()
sock = mosq_test.do_client_connect(connect_packet, connack_packet, port=port)
mosq_test.do_send_receive(sock, subscribe_packet, suback_packet, "suback")
mosq_test.do_send_receive(sock, publish1s_packet, puback1s_packet, "puback")
if expect_deny:
mosq_test.do_send_receive(sock, pingreq_packet, pingresp_packet, "pingresp")
mosq_test.do_ping(sock)
else:
mosq_test.expect_packet(sock, "publish1r", publish1r_packet)
sock.close()

@ -62,9 +62,6 @@ mid = 3
publish4s_packet = mosq_test.gen_publish(topic="topic/two", mid=mid, qos=1, payload="message4")
puback4s_packet = mosq_test.gen_puback(mid)
pingreq_packet = mosq_test.gen_pingreq()
pingresp_packet = mosq_test.gen_pingresp()
rc = 1
port = mosq_test.get_port()
@ -108,7 +105,7 @@ try:
mosq_test.do_send_receive(sock, publish4s_packet, puback4s_packet, "puback4")
# Check for non delivery with a ping
mosq_test.do_send_receive(sock, pingreq_packet, pingresp_packet, "pingresp")
mosq_test.do_ping(sock)
sock.close()
rc = 0

@ -34,9 +34,6 @@ def do_test(port, per_listener):
subscribe_packet = mosq_test.gen_subscribe(mid, "test/topic", 0)
suback_packet = mosq_test.gen_suback(mid, 0)
pingreq_packet = mosq_test.gen_pingreq()
pingresp_packet = mosq_test.gen_pingresp()
broker = mosq_test.start_broker(filename=os.path.basename(__file__), use_conf=True, port=port)
try:
@ -46,7 +43,7 @@ def do_test(port, per_listener):
sock.send(publish_packet)
# If we receive the message, this will fail.
mosq_test.do_send_receive(sock, pingreq_packet, pingresp_packet, "pingresp")
mosq_test.do_ping(sock)
rc = 0
sock.close()

@ -37,9 +37,6 @@ def do_test(per_listener):
publish1_packet = mosq_test.gen_publish("topic/one", qos=1, mid=mid, payload="message", proto_ver=5)
puback1_packet = mosq_test.gen_puback(mid, proto_ver=5, reason_code=mqtt5_rc.MQTT_RC_NOT_AUTHORIZED)
pingreq_packet = mosq_test.gen_pingreq()
pingresp_packet = mosq_test.gen_pingresp()
# Connect without a username, but have the plugin change it
props = mqtt5_props.gen_string_prop(mqtt5_props.PROP_AUTHENTICATION_METHOD, "change")
connect2_packet = mosq_test.gen_connect("client-params-test2", keepalive=42, proto_ver=5, properties=props)
@ -59,14 +56,14 @@ def do_test(per_listener):
sock = mosq_test.do_client_connect(connect1_packet, connack1_packet, timeout=20, port=port)
mosq_test.do_send_receive(sock, subscribe_packet, suback_packet, "suback1")
mosq_test.do_send_receive(sock, publish1_packet, puback1_packet, "puback1")
mosq_test.do_send_receive(sock, pingreq_packet, pingresp_packet, "pingresp")
mosq_test.do_ping(sock)
sock.close()
sock = mosq_test.do_client_connect(connect2_packet, connack2_packet, timeout=20, port=port)
mosq_test.do_send_receive(sock, subscribe_packet, suback_packet, "suback2")
mosq_test.do_send_receive(sock, publish2s_packet, puback2s_packet, "puback2")
if mosq_test.expect_packet(sock, "publish2", publish2r_packet):
mosq_test.do_send_receive(sock, pingreq_packet, pingresp_packet, "pingresp")
mosq_test.do_ping(sock)
rc = 0
sock.close()

@ -62,19 +62,16 @@ reauth3_packet = mosq_test.gen_auth(reason_code=mqtt5_rc.MQTT_RC_REAUTHENTICATE,
disconnect3_packet = mosq_test.gen_disconnect(reason_code=mqtt5_rc.MQTT_RC_PROTOCOL_ERROR, proto_ver=5)
pingreq_packet = mosq_test.gen_pingreq()
pingresp_packet = mosq_test.gen_pingresp()
broker = mosq_test.start_broker(filename=os.path.basename(__file__), use_conf=True, port=port)
try:
sock = mosq_test.do_client_connect(connect1_packet, auth1_1_packet, timeout=20, port=port, connack_error="auth1")
mosq_test.do_send_receive(sock, auth1_2_packet, connack1_packet, "connack1")
mosq_test.do_send_receive(sock, pingreq_packet, pingresp_packet, "pingresp1")
mosq_test.do_ping(sock, "pingresp1")
mosq_test.do_send_receive(sock, reauth2_packet, auth2_1_packet, "auth2_1")
mosq_test.do_send_receive(sock, auth2_2_packet, auth2_3_packet, "auth2_3")
mosq_test.do_send_receive(sock, pingreq_packet, pingresp_packet, "pingresp2")
mosq_test.do_ping(sock, "pingresp2")
mosq_test.do_send_receive(sock, reauth3_packet, disconnect3_packet, "disconnect3")

@ -37,9 +37,6 @@ mid = 2
publish2_packet = mosq_test.gen_publish("writeable", qos=1, mid=mid, payload="message")
puback2_packet = mosq_test.gen_puback(mid)
pingreq_packet = mosq_test.gen_pingreq()
pingresp_packet = mosq_test.gen_pingresp()
broker = mosq_test.start_broker(filename=os.path.basename(__file__), use_conf=True, port=port)
try:
@ -51,7 +48,7 @@ try:
sock = mosq_test.do_client_connect(connect2_packet, connack2_packet, timeout=20, port=port)
mosq_test.do_send_receive(sock, publish2_packet, puback2_packet, "puback2")
mosq_test.do_send_receive(sock, pingreq_packet, pingresp_packet, "pingresp")
mosq_test.do_ping(sock)
rc = 0

@ -24,9 +24,6 @@ mid=2
publish2_packet = mosq_test.gen_publish(topic="test/topic", mid=mid, qos=1, payload="7890", proto_ver=5)
puback2_packet = mosq_test.gen_puback(mid, proto_ver=5)
pingreq_packet = mosq_test.gen_pingreq()
pingresp_packet = mosq_test.gen_pingresp()
port = mosq_test.get_port()
broker = mosq_test.start_broker(filename=os.path.basename(__file__), port=port)
@ -37,7 +34,7 @@ try:
mosq_test.do_send_receive(sock, publish1_packet, puback1_packet, "puback 1")
# We shouldn't receive the publish here because it is > MAXIMUM_PACKET_SIZE
mosq_test.do_send_receive(sock, pingreq_packet, pingresp_packet)
mosq_test.do_ping(sock)
mosq_test.do_send_receive(sock, publish2_packet, puback2_packet, "puback 2")

@ -28,9 +28,6 @@ pubrec2_packet = mosq_test.gen_pubrec(mid, proto_ver=5)
pubrel2_packet = mosq_test.gen_pubrel(mid, proto_ver=5)
pubcomp2_packet = mosq_test.gen_pubcomp(mid, proto_ver=5)
pingreq_packet = mosq_test.gen_pingreq()
pingresp_packet = mosq_test.gen_pingresp()
port = mosq_test.get_port()
broker = mosq_test.start_broker(filename=os.path.basename(__file__), port=port)
@ -42,7 +39,7 @@ try:
mosq_test.do_send_receive(sock, pubrel1_packet, pubcomp1_packet, "pubcomp 1")
# We shouldn't receive the publish here because it is > MAXIMUM_PACKET_SIZE
mosq_test.do_send_receive(sock, pingreq_packet, pingresp_packet)
mosq_test.do_ping(sock)
mosq_test.do_send_receive(sock, publish2_packet, pubrec2_packet, "pubrec 2")
mosq_test.do_send_receive(sock, pubrel2_packet, pubcomp2_packet, "pubcomp 2")

@ -19,9 +19,6 @@ suback_packet = mosq_test.gen_suback(mid, 0, proto_ver=5)
publish1_packet = mosq_test.gen_publish(topic="test/topic", qos=0, payload="12345678901234567890", proto_ver=5)
publish2_packet = mosq_test.gen_publish(topic="test/topic", qos=0, payload="67890", proto_ver=5)
pingreq_packet = mosq_test.gen_pingreq()
pingresp_packet = mosq_test.gen_pingresp()
port = mosq_test.get_port()
broker = mosq_test.start_broker(filename=os.path.basename(__file__), port=port)
@ -30,9 +27,9 @@ try:
mosq_test.do_send_receive(sock, subscribe_packet, suback_packet)
sock.send(publish1_packet)
# We shouldn't receive the publish here because it is > MAXIMUM_PACKET_SIZE
mosq_test.do_send_receive(sock, pingreq_packet, pingresp_packet)
mosq_test.do_ping(sock, "pingresp1")
mosq_test.do_send_receive(sock, publish2_packet, publish2_packet)
mosq_test.do_send_receive(sock, pingreq_packet, pingresp_packet)
mosq_test.do_ping(sock, "pingresp2")
rc = 0
finally:
broker.terminate()

@ -603,6 +603,10 @@ def get_lib_port():
return 1888
def do_ping(sock, error_string="pingresp"):
do_send_receive(sock, gen_pingreq(), gen_pingresp(), error_string)
@atexit.register
def test_cleanup():
global vg_logfiles

Loading…
Cancel
Save