Simpler v5 session expiry in tests.

pull/1480/head
Roger A. Light 6 years ago
parent 98d600099b
commit 16f57cc834

@ -22,12 +22,7 @@ def do_test(proto_ver):
rc = 1
mid = 3265
keepalive = 60
if proto_ver == 5:
props = mqtt5_props.gen_uint32_prop(mqtt5_props.PROP_SESSION_EXPIRY_INTERVAL, 60)
else:
props = None
connect_packet = mosq_test.gen_connect("pub-qos1-disco-test", keepalive=keepalive, clean_session=False, proto_ver=proto_ver, properties=props)
connect_packet = mosq_test.gen_connect("pub-qos1-disco-test", keepalive=keepalive, clean_session=False, proto_ver=proto_ver, session_expiry=60)
connack1_packet = mosq_test.gen_connack(flags=0, rc=0, proto_ver=proto_ver)
connack2_packet = mosq_test.gen_connack(flags=1, rc=0, proto_ver=proto_ver)

@ -27,12 +27,7 @@ def do_test(proto_ver):
rc = 1
mid = 3265
keepalive = 60
if proto_ver == 5:
props = mqtt5_props.gen_uint32_prop(mqtt5_props.PROP_SESSION_EXPIRY_INTERVAL, 60)
else:
props = None
connect_packet = mosq_test.gen_connect("pub-qos2-disco-test", keepalive=keepalive, clean_session=False, proto_ver=proto_ver, properties=props)
connect_packet = mosq_test.gen_connect("pub-qos2-disco-test", keepalive=keepalive, clean_session=False, proto_ver=proto_ver, session_expiry=60)
connack1_packet = mosq_test.gen_connack(flags=0, rc=0, proto_ver=proto_ver)
connack2_packet = mosq_test.gen_connack(flags=1, rc=0, proto_ver=proto_ver)

@ -7,11 +7,7 @@ def do_test(proto_ver):
rc = 1
mid = 3265
keepalive = 60
if proto_ver == 5:
props = mqtt5_props.gen_uint32_prop(mqtt5_props.PROP_SESSION_EXPIRY_INTERVAL, 60)
else:
props = None
connect_packet = mosq_test.gen_connect("pub-qos2-disco-test", keepalive=keepalive, clean_session=False, proto_ver=proto_ver, properties=props)
connect_packet = mosq_test.gen_connect("pub-qos2-disco-test", keepalive=keepalive, clean_session=False, proto_ver=proto_ver, session_expiry=60)
connack1_packet = mosq_test.gen_connack(flags=0, rc=0, proto_ver=proto_ver)
if proto_ver == 3:

@ -12,12 +12,7 @@ def do_test(proto_ver, clean_session):
connect1_packet = mosq_test.gen_connect("will-qos0-test", keepalive=keepalive, proto_ver=proto_ver)
connack1_packet = mosq_test.gen_connack(rc=0, proto_ver=proto_ver)
if proto_ver == 5:
props = mqtt5_props.gen_uint32_prop(mqtt5_props.PROP_SESSION_EXPIRY_INTERVAL, 100)
else:
props = None
connect2_packet = mosq_test.gen_connect("test-helper", keepalive=keepalive, will_topic="will/qos0/test", will_payload=b"will-message", clean_session=clean_session, proto_ver=proto_ver, properties=props)
connect2_packet = mosq_test.gen_connect("test-helper", keepalive=keepalive, will_topic="will/qos0/test", will_payload=b"will-message", clean_session=clean_session, proto_ver=proto_ver, session_expiry=60)
connack2_packet = mosq_test.gen_connack(rc=0, proto_ver=proto_ver)
subscribe_packet = mosq_test.gen_subscribe(mid, "will/qos0/test", 0, proto_ver=proto_ver)

@ -18,12 +18,7 @@ def do_test(proto_ver):
subscribe1_packet = mosq_test.gen_subscribe(mid, "will/test", 0, proto_ver=proto_ver)
suback1_packet = mosq_test.gen_suback(mid, 0, proto_ver=proto_ver)
if proto_ver == 5:
props = mqtt5_props.gen_uint32_prop(mqtt5_props.PROP_SESSION_EXPIRY_INTERVAL, 100)
else:
props = None
connect2_packet = mosq_test.gen_connect("will-1273", keepalive=keepalive, will_topic="will/test", will_payload=b"will msg",clean_session=False, proto_ver=proto_ver, properties=props)
connect2_packet = mosq_test.gen_connect("will-1273", keepalive=keepalive, will_topic="will/test", will_payload=b"will msg",clean_session=False, proto_ver=proto_ver, session_expiry=60)
connack2a_packet = mosq_test.gen_connack(rc=0, proto_ver=proto_ver)
connack2b_packet = mosq_test.gen_connack(rc=0, flags=1, proto_ver=proto_ver)

@ -24,8 +24,7 @@ write_config(conf_file, port)
rc = 1
keepalive = 60
props = mqtt5_props.gen_uint32_prop(mqtt5_props.PROP_SESSION_EXPIRY_INTERVAL, 60)
connect_packet = mosq_test.gen_connect("subpub-qos0-test", keepalive=keepalive, proto_ver=5, clean_session=False, properties=props)
connect_packet = mosq_test.gen_connect("subpub-qos0-test", keepalive=keepalive, proto_ver=5, clean_session=False, session_expiry=60)
connack1_packet = mosq_test.gen_connack(rc=0, proto_ver=5)
connack2_packet = mosq_test.gen_connack(rc=0, proto_ver=5, flags=1)

@ -17,9 +17,8 @@ write_config(conf_file, port)
rc = 1
keepalive = 60
props = mqtt5_props.gen_uint32_prop(mqtt5_props.PROP_SESSION_EXPIRY_INTERVAL, 100)
connect_packet = mosq_test.gen_connect(
"persistent-subscription-test", keepalive=keepalive, clean_session=False, proto_ver=5, properties=props
"persistent-subscription-test", keepalive=keepalive, clean_session=False, proto_ver=5, session_expiry=60
)
connack_packet = mosq_test.gen_connack(rc=0, proto_ver=5)
connack_packet2 = mosq_test.gen_connack(rc=0, flags=1, proto_ver=5) # session present

@ -18,9 +18,8 @@ rc = 1
mid = 530
keepalive = 60
props = mqtt5_props.gen_uint32_prop(mqtt5_props.PROP_SESSION_EXPIRY_INTERVAL, 100)
connect_packet = mosq_test.gen_connect(
"persistent-subscription-test", keepalive=keepalive, clean_session=False, proto_ver=5, properties=props
"persistent-subscription-test", keepalive=keepalive, clean_session=False, proto_ver=5, session_expiry=60
)
connack_packet = mosq_test.gen_connack(rc=0, proto_ver=5)
connack_packet2 = mosq_test.gen_connack(rc=0, flags=1, proto_ver=5) # session present

@ -17,9 +17,8 @@ write_config(conf_file, port)
rc = 1
keepalive = 60
props = mqtt5_props.gen_uint32_prop(mqtt5_props.PROP_SESSION_EXPIRY_INTERVAL, 100)
connect_packet = mosq_test.gen_connect(
"persistent-subscription-test", keepalive=keepalive, clean_session=False, proto_ver=5, properties=props
"persistent-subscription-test", keepalive=keepalive, clean_session=False, proto_ver=5, session_expiry=60
)
connack_packet = mosq_test.gen_connack(rc=0, proto_ver=5)
connack_packet2 = mosq_test.gen_connack(rc=0, flags=1, proto_ver=5) # session present

@ -316,7 +316,7 @@ def to_string(packet):
(cmd, rl) = struct.unpack('!BB', packet)
return "AUTH, rl="+str(rl)
def gen_connect(client_id, clean_session=True, keepalive=60, username=None, password=None, will_topic=None, will_qos=0, will_retain=False, will_payload=b"", proto_ver=4, connect_reserved=False, properties=b"", will_properties=b""):
def gen_connect(client_id, clean_session=True, keepalive=60, username=None, password=None, will_topic=None, will_qos=0, will_retain=False, will_payload=b"", proto_ver=4, connect_reserved=False, properties=b"", will_properties=b"", session_expiry=-1):
if (proto_ver&0x7F) == 3 or proto_ver == 0:
remaining_length = 12
elif (proto_ver&0x7F) == 4 or proto_ver == 5:
@ -341,6 +341,10 @@ def gen_connect(client_id, clean_session=True, keepalive=60, username=None, pass
if proto_ver == 5:
if properties == b"":
properties += mqtt5_props.gen_uint16_prop(mqtt5_props.PROP_RECEIVE_MAXIMUM, 20)
if session_expiry != -1:
properties += mqtt5_props.gen_uint32_prop(mqtt5_props.PROP_SESSION_EXPIRY_INTERVAL, session_expiry)
properties = mqtt5_props.prop_finalise(properties)
remaining_length += len(properties)

Loading…
Cancel
Save