diff --git a/test/test_mqtt.py b/test/test_mqtt.py index 547e1e65c..05a0132fd 100644 --- a/test/test_mqtt.py +++ b/test/test_mqtt.py @@ -532,9 +532,15 @@ def on_connection_success_callback_dup(connection, callback_data: OnConnectionSu client_id=connection.client_id, on_connection_success_callback=on_connection_success_callback_dup) - connection_dup.connect().result(TIMEOUT) - on_connection_success_future_dup.result(TIMEOUT) - connection_dup.disconnect().result(TIMEOUT) + dup_success = False + while not dup_success: + try: + connection_dup.connect().result(TIMEOUT) + on_connection_success_future_dup.result(TIMEOUT) + dup_success = True + connection_dup.disconnect().result(TIMEOUT) + except BaseException: + time.sleep(2) # After the second client disconnects, the first one should reconnect, # and on_connection_success callback should be fired once again.