diff --git a/.gitignore b/.gitignore index 1a001570..d144d3ac 100644 --- a/.gitignore +++ b/.gitignore @@ -4,6 +4,7 @@ c/*.test cpp/*.test *.pyc +*.vglog client/mosquitto_pub client/mosquitto_sub diff --git a/test/broker/01-connect-anon-denied.py b/test/broker/01-connect-anon-denied.py index e83bedf0..3b2820c7 100755 --- a/test/broker/01-connect-anon-denied.py +++ b/test/broker/01-connect-anon-denied.py @@ -19,11 +19,9 @@ keepalive = 10 connect_packet = mosq_test.gen_connect("connect-anon-test", keepalive=keepalive) connack_packet = mosq_test.gen_connack(rc=5) -broker = subprocess.Popen(['../../src/mosquitto', '-c', '01-connect-anon-denied.conf'], stderr=subprocess.PIPE) +broker = mosq_test.start_broker(filename=os.path.basename(__file__)) try: - time.sleep(0.5) - sock = mosq_test.do_client_connect(connect_packet, connack_packet) sock.close() rc = 0 diff --git a/test/broker/01-connect-invalid-id-0-311.py b/test/broker/01-connect-invalid-id-0-311.py index 1ace1c3d..5b9f5136 100755 --- a/test/broker/01-connect-invalid-id-0-311.py +++ b/test/broker/01-connect-invalid-id-0-311.py @@ -19,11 +19,10 @@ keepalive = 10 connect_packet = mosq_test.gen_connect("", keepalive=keepalive, proto_ver=4) connack_packet = mosq_test.gen_connack(rc=0) -broker = subprocess.Popen(['../../src/mosquitto', '-p', '1888'], stderr=subprocess.PIPE) +cmd = ['../../src/mosquitto', '-p', '1888'] +broker = mosq_test.start_broker(filename=os.path.basename(__file__), cmd=cmd) try: - time.sleep(0.5) - sock = mosq_test.do_client_connect(connect_packet, connack_packet) sock.close() rc = 0 diff --git a/test/broker/01-connect-invalid-id-0.py b/test/broker/01-connect-invalid-id-0.py index 972d3ab6..32f38c86 100755 --- a/test/broker/01-connect-invalid-id-0.py +++ b/test/broker/01-connect-invalid-id-0.py @@ -19,11 +19,10 @@ keepalive = 10 connect_packet = mosq_test.gen_connect("", keepalive=keepalive) connack_packet = mosq_test.gen_connack(rc=2) -broker = subprocess.Popen(['../../src/mosquitto', '-p', '1888'], stderr=subprocess.PIPE) +cmd = ['../../src/mosquitto', '-p', '1888'] +broker = mosq_test.start_broker(filename=os.path.basename(__file__), cmd=cmd) try: - time.sleep(0.5) - sock = mosq_test.do_client_connect(connect_packet, connack_packet) sock.close() rc = 0 diff --git a/test/broker/01-connect-invalid-id-missing.py b/test/broker/01-connect-invalid-id-missing.py index 55e46f15..3066776c 100755 --- a/test/broker/01-connect-invalid-id-missing.py +++ b/test/broker/01-connect-invalid-id-missing.py @@ -18,11 +18,10 @@ rc = 1 keepalive = 10 connect_packet = mosq_test.gen_connect(None, keepalive=keepalive) -broker = subprocess.Popen(['../../src/mosquitto', '-p', '1888'], stderr=subprocess.PIPE) +cmd = ['../../src/mosquitto', '-p', '1888'] +broker = mosq_test.start_broker(filename=os.path.basename(__file__), cmd=cmd) try: - time.sleep(0.5) - sock = mosq_test.do_client_connect(connect_packet, "") sock.close() rc = 0 diff --git a/test/broker/01-connect-invalid-protonum.py b/test/broker/01-connect-invalid-protonum.py index 4a2c5fb3..ec9f826b 100755 --- a/test/broker/01-connect-invalid-protonum.py +++ b/test/broker/01-connect-invalid-protonum.py @@ -19,11 +19,10 @@ keepalive = 10 connect_packet = mosq_test.gen_connect("connect-invalid-test", keepalive=keepalive, proto_ver=0) connack_packet = mosq_test.gen_connack(rc=1) -broker = subprocess.Popen(['../../src/mosquitto', '-p', '1888'], stderr=subprocess.PIPE) +cmd = ['../../src/mosquitto', '-p', '1888'] +broker = mosq_test.start_broker(filename=os.path.basename(__file__), cmd=cmd) try: - time.sleep(0.5) - sock = mosq_test.do_client_connect(connect_packet, connack_packet) sock.close() rc = 0 diff --git a/test/broker/01-connect-success.py b/test/broker/01-connect-success.py index 05b43ed8..45c26a87 100755 --- a/test/broker/01-connect-success.py +++ b/test/broker/01-connect-success.py @@ -21,11 +21,10 @@ keepalive = 10 connect_packet = mosq_test.gen_connect("connect-success-test", keepalive=keepalive) connack_packet = mosq_test.gen_connack(rc=0) -broker = subprocess.Popen(['../../src/mosquitto', '-p', '1888'], stderr=subprocess.PIPE) +cmd = ['../../src/mosquitto', '-p', '1888'] +broker = mosq_test.start_broker(filename=os.path.basename(__file__), cmd=cmd) try: - time.sleep(0.5) - sock = mosq_test.do_client_connect(connect_packet, connack_packet) sock.close() rc = 0 diff --git a/test/broker/01-connect-uname-no-password-denied.py b/test/broker/01-connect-uname-no-password-denied.py index 845b10da..4b81017b 100755 --- a/test/broker/01-connect-uname-no-password-denied.py +++ b/test/broker/01-connect-uname-no-password-denied.py @@ -20,11 +20,9 @@ keepalive = 10 connect_packet = mosq_test.gen_connect("connect-uname-test", keepalive=keepalive, username="user") connack_packet = mosq_test.gen_connack(rc=4) -broker = subprocess.Popen(['../../src/mosquitto', '-c', '01-connect-uname-no-password-denied.conf'], stderr=subprocess.PIPE) +broker = mosq_test.start_broker(filename=os.path.basename(__file__)) try: - time.sleep(0.5) - sock = mosq_test.do_client_connect(connect_packet, connack_packet) sock.close() rc = 0 diff --git a/test/broker/01-connect-uname-password-denied.py b/test/broker/01-connect-uname-password-denied.py index 61890792..d34ea0f2 100755 --- a/test/broker/01-connect-uname-password-denied.py +++ b/test/broker/01-connect-uname-password-denied.py @@ -20,11 +20,9 @@ keepalive = 10 connect_packet = mosq_test.gen_connect("connect-uname-pwd-test", keepalive=keepalive, username="user", password="password9") connack_packet = mosq_test.gen_connack(rc=4) -broker = subprocess.Popen(['../../src/mosquitto', '-c', '01-connect-uname-password-denied.conf'], stderr=subprocess.PIPE) +broker = mosq_test.start_broker(filename=os.path.basename(__file__)) try: - time.sleep(0.5) - sock = mosq_test.do_client_connect(connect_packet, connack_packet) sock.close() rc = 0 diff --git a/test/broker/01-connect-uname-password-success.py b/test/broker/01-connect-uname-password-success.py index ca2d6b4f..19c509b5 100755 --- a/test/broker/01-connect-uname-password-success.py +++ b/test/broker/01-connect-uname-password-success.py @@ -20,11 +20,9 @@ keepalive = 10 connect_packet = mosq_test.gen_connect("connect-uname-pwd-test", keepalive=keepalive, username="user", password="password") connack_packet = mosq_test.gen_connack(rc=0) -broker = subprocess.Popen(['../../src/mosquitto', '-c', '01-connect-uname-password-success.conf'], stderr=subprocess.PIPE) +broker = mosq_test.start_broker(filename=os.path.basename(__file__)) try: - time.sleep(0.5) - sock = mosq_test.do_client_connect(connect_packet, connack_packet) sock.close() rc = 0 diff --git a/test/broker/02-subpub-qos0.py b/test/broker/02-subpub-qos0.py index b5ff606c..0a65d774 100755 --- a/test/broker/02-subpub-qos0.py +++ b/test/broker/02-subpub-qos0.py @@ -25,11 +25,10 @@ suback_packet = mosq_test.gen_suback(mid, 0) publish_packet = mosq_test.gen_publish("subpub/qos0", qos=0, payload="message") -broker = subprocess.Popen(['../../src/mosquitto', '-p', '1888'], stderr=subprocess.PIPE) +cmd = ['../../src/mosquitto', '-p', '1888'] +broker = mosq_test.start_broker(filename=os.path.basename(__file__), cmd=cmd) try: - time.sleep(0.5) - sock = mosq_test.do_client_connect(connect_packet, connack_packet, timeout=20) sock.send(subscribe_packet) diff --git a/test/broker/02-subpub-qos1.py b/test/broker/02-subpub-qos1.py index c58a455a..c6ff7668 100755 --- a/test/broker/02-subpub-qos1.py +++ b/test/broker/02-subpub-qos1.py @@ -30,11 +30,10 @@ puback_packet = mosq_test.gen_puback(mid) mid = 1 publish_packet2 = mosq_test.gen_publish("subpub/qos1", qos=1, mid=mid, payload="message") -broker = subprocess.Popen(['../../src/mosquitto', '-p', '1888'], stderr=subprocess.PIPE) +cmd = ['../../src/mosquitto', '-p', '1888'] +broker = mosq_test.start_broker(filename=os.path.basename(__file__), cmd=cmd) try: - time.sleep(0.5) - sock = mosq_test.do_client_connect(connect_packet, connack_packet, timeout=20) sock.send(subscribe_packet) diff --git a/test/broker/02-subpub-qos2.py b/test/broker/02-subpub-qos2.py index 11f2ef7c..df7d3749 100755 --- a/test/broker/02-subpub-qos2.py +++ b/test/broker/02-subpub-qos2.py @@ -35,11 +35,10 @@ pubrec_packet2 = mosq_test.gen_pubrec(mid) pubrel_packet2 = mosq_test.gen_pubrel(mid) pubcomp_packet2 = mosq_test.gen_pubcomp(mid) -broker = subprocess.Popen(['../../src/mosquitto', '-p', '1888'], stderr=subprocess.PIPE) +cmd = ['../../src/mosquitto', '-p', '1888'] +broker = mosq_test.start_broker(filename=os.path.basename(__file__), cmd=cmd) try: - time.sleep(0.5) - sock = mosq_test.do_client_connect(connect_packet, connack_packet, timeout=20) sock.send(subscribe_packet) diff --git a/test/broker/02-subscribe-qos0.py b/test/broker/02-subscribe-qos0.py index 34b62e41..370f67a5 100755 --- a/test/broker/02-subscribe-qos0.py +++ b/test/broker/02-subscribe-qos0.py @@ -23,7 +23,8 @@ connack_packet = mosq_test.gen_connack(rc=0) subscribe_packet = mosq_test.gen_subscribe(mid, "qos0/test", 0) suback_packet = mosq_test.gen_suback(mid, 0) -broker = subprocess.Popen(['../../src/mosquitto', '-p', '1888'], stderr=subprocess.PIPE) +cmd = ['../../src/mosquitto', '-p', '1888'] +broker = mosq_test.start_broker(filename=os.path.basename(__file__), cmd=cmd) try: time.sleep(0.5) diff --git a/test/broker/02-subscribe-qos1.py b/test/broker/02-subscribe-qos1.py index 644b03ce..bba2dec0 100755 --- a/test/broker/02-subscribe-qos1.py +++ b/test/broker/02-subscribe-qos1.py @@ -23,11 +23,10 @@ connack_packet = mosq_test.gen_connack(rc=0) subscribe_packet = mosq_test.gen_subscribe(mid, "qos1/test", 1) suback_packet = mosq_test.gen_suback(mid, 1) -broker = subprocess.Popen(['../../src/mosquitto', '-p', '1888'], stderr=subprocess.PIPE) +cmd = ['../../src/mosquitto', '-p', '1888'] +broker = mosq_test.start_broker(filename=os.path.basename(__file__), cmd=cmd) try: - time.sleep(0.5) - sock = mosq_test.do_client_connect(connect_packet, connack_packet) sock.send(subscribe_packet) diff --git a/test/broker/02-subscribe-qos2.py b/test/broker/02-subscribe-qos2.py index 9aba219d..e56daac5 100755 --- a/test/broker/02-subscribe-qos2.py +++ b/test/broker/02-subscribe-qos2.py @@ -23,11 +23,10 @@ connack_packet = mosq_test.gen_connack(rc=0) subscribe_packet = mosq_test.gen_subscribe(mid, "qos2/test", 2) suback_packet = mosq_test.gen_suback(mid, 2) -broker = subprocess.Popen(['../../src/mosquitto', '-p', '1888'], stderr=subprocess.PIPE) +cmd = ['../../src/mosquitto', '-p', '1888'] +broker = mosq_test.start_broker(filename=os.path.basename(__file__), cmd=cmd) try: - time.sleep(0.5) - sock = mosq_test.do_client_connect(connect_packet, connack_packet) sock.send(subscribe_packet) diff --git a/test/broker/02-unsubscribe-qos0.py b/test/broker/02-unsubscribe-qos0.py index 8b544ad6..b222129c 100755 --- a/test/broker/02-unsubscribe-qos0.py +++ b/test/broker/02-unsubscribe-qos0.py @@ -24,11 +24,10 @@ connack_packet = mosq_test.gen_connack(rc=0) unsubscribe_packet = mosq_test.gen_unsubscribe(mid, "qos0/test") unsuback_packet = mosq_test.gen_unsuback(mid) -broker = subprocess.Popen(['../../src/mosquitto', '-p', '1888'], stderr=subprocess.PIPE) +cmd = ['../../src/mosquitto', '-p', '1888'] +broker = mosq_test.start_broker(filename=os.path.basename(__file__), cmd=cmd) try: - time.sleep(0.5) - sock = mosq_test.do_client_connect(connect_packet, connack_packet) sock.send(unsubscribe_packet) diff --git a/test/broker/02-unsubscribe-qos1.py b/test/broker/02-unsubscribe-qos1.py index ea8cabef..db18cfda 100755 --- a/test/broker/02-unsubscribe-qos1.py +++ b/test/broker/02-unsubscribe-qos1.py @@ -23,11 +23,10 @@ connack_packet = mosq_test.gen_connack(rc=0) unsubscribe_packet = mosq_test.gen_unsubscribe(mid, "qos1/test") unsuback_packet = mosq_test.gen_unsuback(mid) -broker = subprocess.Popen(['../../src/mosquitto', '-p', '1888'], stderr=subprocess.PIPE) +cmd = ['../../src/mosquitto', '-p', '1888'] +broker = mosq_test.start_broker(filename=os.path.basename(__file__), cmd=cmd) try: - time.sleep(0.5) - sock = mosq_test.do_client_connect(connect_packet, connack_packet) sock.send(unsubscribe_packet) diff --git a/test/broker/02-unsubscribe-qos2.py b/test/broker/02-unsubscribe-qos2.py index 95b7d03e..c3b2fd85 100755 --- a/test/broker/02-unsubscribe-qos2.py +++ b/test/broker/02-unsubscribe-qos2.py @@ -23,11 +23,10 @@ connack_packet = mosq_test.gen_connack(rc=0) unsubscribe_packet = mosq_test.gen_unsubscribe(mid, "qos2/test") unsuback_packet = mosq_test.gen_unsuback(mid) -broker = subprocess.Popen(['../../src/mosquitto', '-p', '1888'], stderr=subprocess.PIPE) +cmd = ['../../src/mosquitto', '-p', '1888'] +broker = mosq_test.start_broker(filename=os.path.basename(__file__), cmd=cmd) try: - time.sleep(0.5) - sock = mosq_test.do_client_connect(connect_packet, connack_packet) sock.send(unsubscribe_packet) diff --git a/test/broker/03-publish-b2c-disconnect-qos1.py b/test/broker/03-publish-b2c-disconnect-qos1.py index 50fdf874..009dc70c 100755 --- a/test/broker/03-publish-b2c-disconnect-qos1.py +++ b/test/broker/03-publish-b2c-disconnect-qos1.py @@ -31,11 +31,9 @@ mid = 3266 publish2_packet = mosq_test.gen_publish("qos1/outgoing", qos=1, mid=mid, payload="outgoing-message") puback2_packet = mosq_test.gen_puback(mid) -broker = subprocess.Popen(['../../src/mosquitto', '-c', '03-publish-b2c-disconnect-qos1.conf'], stderr=subprocess.PIPE) +broker = mosq_test.start_broker(filename=os.path.basename(__file__)) try: - time.sleep(0.5) - sock = mosq_test.do_client_connect(connect_packet, connack_packet) sock.send(subscribe_packet) diff --git a/test/broker/03-publish-b2c-disconnect-qos2.py b/test/broker/03-publish-b2c-disconnect-qos2.py index a932bc73..25daa884 100755 --- a/test/broker/03-publish-b2c-disconnect-qos2.py +++ b/test/broker/03-publish-b2c-disconnect-qos2.py @@ -34,11 +34,9 @@ mid = 3266 publish2_packet = mosq_test.gen_publish("qos1/outgoing", qos=1, mid=mid, payload="outgoing-message") puback2_packet = mosq_test.gen_puback(mid) -broker = subprocess.Popen(['../../src/mosquitto', '-c', '03-publish-b2c-disconnect-qos2.conf'], stderr=subprocess.PIPE) +broker = mosq_test.start_broker(filename=os.path.basename(__file__)) try: - time.sleep(0.5) - sock = mosq_test.do_client_connect(connect_packet, connack_packet) sock.send(subscribe_packet) diff --git a/test/broker/03-publish-b2c-timeout-qos1.py b/test/broker/03-publish-b2c-timeout-qos1.py index 16086423..cc319596 100755 --- a/test/broker/03-publish-b2c-timeout-qos1.py +++ b/test/broker/03-publish-b2c-timeout-qos1.py @@ -29,11 +29,9 @@ publish_packet = mosq_test.gen_publish("qos1/timeout/test", qos=1, mid=mid, payl publish_dup_packet = mosq_test.gen_publish("qos1/timeout/test", qos=1, mid=mid, payload="timeout-message", dup=True) puback_packet = mosq_test.gen_puback(mid) -broker = subprocess.Popen(['../../src/mosquitto', '-c', '03-publish-b2c-timeout-qos1.conf'], stderr=subprocess.PIPE) +broker = mosq_test.start_broker(filename=os.path.basename(__file__)) try: - time.sleep(0.5) - sock = mosq_test.do_client_connect(connect_packet, connack_packet) sock.send(subscribe_packet) diff --git a/test/broker/03-publish-b2c-timeout-qos2.py b/test/broker/03-publish-b2c-timeout-qos2.py index 4b9c09a7..2249cd97 100755 --- a/test/broker/03-publish-b2c-timeout-qos2.py +++ b/test/broker/03-publish-b2c-timeout-qos2.py @@ -32,11 +32,9 @@ pubrel_packet = mosq_test.gen_pubrel(mid) pubrel_dup_packet = mosq_test.gen_pubrel(mid, dup=True) pubcomp_packet = mosq_test.gen_pubcomp(mid) -broker = subprocess.Popen(['../../src/mosquitto', '-c', '03-publish-b2c-timeout-qos2.conf'], stderr=subprocess.PIPE) +broker = mosq_test.start_broker(filename=os.path.basename(__file__)) try: - time.sleep(0.5) - sock = mosq_test.do_client_connect(connect_packet, connack_packet) sock.send(subscribe_packet) diff --git a/test/broker/03-publish-c2b-disconnect-qos2.py b/test/broker/03-publish-c2b-disconnect-qos2.py index 56a17f15..79c73194 100755 --- a/test/broker/03-publish-c2b-disconnect-qos2.py +++ b/test/broker/03-publish-c2b-disconnect-qos2.py @@ -34,15 +34,10 @@ mid = 3266 publish2_packet = mosq_test.gen_publish("qos1/outgoing", qos=1, mid=mid, payload="outgoing-message") puback2_packet = mosq_test.gen_puback(mid) -broker = subprocess.Popen(['../../src/mosquitto', '-c', '03-publish-c2b-disconnect-qos2.conf'], stderr=subprocess.PIPE) +broker = mosq_test.start_broker(filename=os.path.basename(__file__)) try: - time.sleep(0.5) - sock = mosq_test.do_client_connect(connect_packet, connack_packet) - #sock.send(subscribe_packet) - - #if mosq_test.expect_packet(sock, "suback", suback_packet): sock.send(publish_packet) if mosq_test.expect_packet(sock, "pubrec", pubrec_packet): diff --git a/test/broker/03-publish-c2b-timeout-qos2.py b/test/broker/03-publish-c2b-timeout-qos2.py index 61008646..a6e5997d 100755 --- a/test/broker/03-publish-c2b-timeout-qos2.py +++ b/test/broker/03-publish-c2b-timeout-qos2.py @@ -27,11 +27,9 @@ pubrec_packet = mosq_test.gen_pubrec(mid) pubrel_packet = mosq_test.gen_pubrel(mid) pubcomp_packet = mosq_test.gen_pubcomp(mid) -broker = subprocess.Popen(['../../src/mosquitto', '-c', '03-publish-c2b-timeout-qos2.conf'], stderr=subprocess.PIPE) +broker = mosq_test.start_broker(filename=os.path.basename(__file__)) try: - time.sleep(0.5) - sock = mosq_test.do_client_connect(connect_packet, connack_packet) sock.send(publish_packet) diff --git a/test/broker/03-publish-qos1.py b/test/broker/03-publish-qos1.py index bb8a9496..6d183550 100755 --- a/test/broker/03-publish-qos1.py +++ b/test/broker/03-publish-qos1.py @@ -23,11 +23,10 @@ connack_packet = mosq_test.gen_connack(rc=0) publish_packet = mosq_test.gen_publish("pub/qos1/test", qos=1, mid=mid, payload="message") puback_packet = mosq_test.gen_puback(mid) -broker = subprocess.Popen(['../../src/mosquitto', '-p', '1888'], stderr=subprocess.PIPE) +cmd = ['../../src/mosquitto', '-p', '1888'] +broker = mosq_test.start_broker(filename=os.path.basename(__file__), cmd=cmd) try: - time.sleep(0.5) - sock = mosq_test.do_client_connect(connect_packet, connack_packet) sock.send(publish_packet) diff --git a/test/broker/03-publish-qos2.py b/test/broker/03-publish-qos2.py index 46e5ab53..81b612d1 100755 --- a/test/broker/03-publish-qos2.py +++ b/test/broker/03-publish-qos2.py @@ -25,11 +25,10 @@ pubrec_packet = mosq_test.gen_pubrec(mid) pubrel_packet = mosq_test.gen_pubrel(mid) pubcomp_packet = mosq_test.gen_pubcomp(mid) -broker = subprocess.Popen(['../../src/mosquitto', '-p', '1888'], stderr=subprocess.PIPE) +cmd = ['../../src/mosquitto', '-p', '1888'] +broker = mosq_test.start_broker(filename=os.path.basename(__file__), cmd=cmd) try: - time.sleep(0.5) - sock = mosq_test.do_client_connect(connect_packet, connack_packet) sock.send(publish_packet) diff --git a/test/broker/04-retain-qos0-clear.py b/test/broker/04-retain-qos0-clear.py index fac1acba..08d76ccf 100755 --- a/test/broker/04-retain-qos0-clear.py +++ b/test/broker/04-retain-qos0-clear.py @@ -30,11 +30,10 @@ mid_unsub = 593 unsubscribe_packet = mosq_test.gen_unsubscribe(mid_unsub, "retain/clear/test") unsuback_packet = mosq_test.gen_unsuback(mid_unsub) -broker = subprocess.Popen(['../../src/mosquitto', '-p', '1888'], stderr=subprocess.PIPE) +cmd = ['../../src/mosquitto', '-p', '1888'] +broker = mosq_test.start_broker(filename=os.path.basename(__file__), cmd=cmd) try: - time.sleep(0.5) - sock = mosq_test.do_client_connect(connect_packet, connack_packet, timeout=4) # Send retained message sock.send(publish_packet) diff --git a/test/broker/04-retain-qos0-fresh.py b/test/broker/04-retain-qos0-fresh.py index f7f0f391..caee6d80 100755 --- a/test/broker/04-retain-qos0-fresh.py +++ b/test/broker/04-retain-qos0-fresh.py @@ -26,11 +26,10 @@ publish_fresh_packet = mosq_test.gen_publish("retain/qos0/test", qos=0, payload= subscribe_packet = mosq_test.gen_subscribe(mid, "retain/qos0/test", 0) suback_packet = mosq_test.gen_suback(mid, 0) -broker = subprocess.Popen(['../../src/mosquitto', '-p', '1888'], stderr=subprocess.PIPE) +cmd = ['../../src/mosquitto', '-p', '1888'] +broker = mosq_test.start_broker(filename=os.path.basename(__file__), cmd=cmd) try: - time.sleep(0.5) - sock = mosq_test.do_client_connect(connect_packet, connack_packet) sock.send(subscribe_packet) diff --git a/test/broker/04-retain-qos0-repeated.py b/test/broker/04-retain-qos0-repeated.py index de992065..49fc97fb 100755 --- a/test/broker/04-retain-qos0-repeated.py +++ b/test/broker/04-retain-qos0-repeated.py @@ -29,11 +29,10 @@ unsub_mid = 13 unsubscribe_packet = mosq_test.gen_unsubscribe(unsub_mid, "retain/qos0/test/") unsuback_packet = mosq_test.gen_unsuback(unsub_mid) -broker = subprocess.Popen(['../../src/mosquitto', '-p', '1888'], stderr=subprocess.PIPE) +cmd = ['../../src/mosquitto', '-p', '1888'] +broker = mosq_test.start_broker(filename=os.path.basename(__file__), cmd=cmd) try: - time.sleep(0.5) - sock = mosq_test.do_client_connect(connect_packet, connack_packet, timeout=20) sock.send(publish_packet) sock.send(subscribe_packet) diff --git a/test/broker/04-retain-qos0.py b/test/broker/04-retain-qos0.py index 6b482328..c5d6c36a 100755 --- a/test/broker/04-retain-qos0.py +++ b/test/broker/04-retain-qos0.py @@ -24,11 +24,10 @@ publish_packet = mosq_test.gen_publish("retain/qos0/test", qos=0, payload="retai subscribe_packet = mosq_test.gen_subscribe(mid, "retain/qos0/test", 0) suback_packet = mosq_test.gen_suback(mid, 0) -broker = subprocess.Popen(['../../src/mosquitto', '-p', '1888'], stderr=subprocess.PIPE) +cmd = ['../../src/mosquitto', '-p', '1888'] +broker = mosq_test.start_broker(filename=os.path.basename(__file__), cmd=cmd) try: - time.sleep(0.5) - sock = mosq_test.do_client_connect(connect_packet, connack_packet) sock.send(publish_packet) sock.send(subscribe_packet) diff --git a/test/broker/04-retain-qos1-qos0.py b/test/broker/04-retain-qos1-qos0.py index deb35aec..725d3ed9 100755 --- a/test/broker/04-retain-qos1-qos0.py +++ b/test/broker/04-retain-qos1-qos0.py @@ -29,11 +29,10 @@ subscribe_packet = mosq_test.gen_subscribe(mid, "retain/qos1/test", 0) suback_packet = mosq_test.gen_suback(mid, 0) publish0_packet = mosq_test.gen_publish("retain/qos1/test", qos=0, payload="retained message", retain=True) -broker = subprocess.Popen(['../../src/mosquitto', '-p', '1888'], stderr=subprocess.PIPE) +cmd = ['../../src/mosquitto', '-p', '1888'] +broker = mosq_test.start_broker(filename=os.path.basename(__file__), cmd=cmd) try: - time.sleep(0.5) - sock = mosq_test.do_client_connect(connect_packet, connack_packet) sock.send(publish_packet) diff --git a/test/broker/05-clean-session-qos1.py b/test/broker/05-clean-session-qos1.py index 771b22de..332dc738 100755 --- a/test/broker/05-clean-session-qos1.py +++ b/test/broker/05-clean-session-qos1.py @@ -29,11 +29,10 @@ mid = 1 publish_packet = mosq_test.gen_publish("qos1/clean_session/test", qos=1, mid=mid, payload="clean-session-message") puback_packet = mosq_test.gen_puback(mid) -broker = subprocess.Popen(['../../src/mosquitto', '-p', '1888'], stderr=subprocess.PIPE) +cmd = ['../../src/mosquitto', '-p', '1888'] +broker = mosq_test.start_broker(filename=os.path.basename(__file__), cmd=cmd) try: - time.sleep(0.5) - sock = mosq_test.do_client_connect(connect_packet, connack_packet) sock.send(subscribe_packet) diff --git a/test/broker/06-bridge-b2br-disconnect-qos1.py b/test/broker/06-bridge-b2br-disconnect-qos1.py index afa49d58..011c8cf3 100755 --- a/test/broker/06-bridge-b2br-disconnect-qos1.py +++ b/test/broker/06-bridge-b2br-disconnect-qos1.py @@ -44,11 +44,9 @@ ssock.settimeout(40) ssock.bind(('', 1888)) ssock.listen(5) -broker = subprocess.Popen(['../../src/mosquitto', '-c', '06-bridge-b2br-disconnect-qos1.conf'], stderr=subprocess.PIPE) +broker = mosq_test.start_broker(filename=os.path.basename(__file__), port=1889) try: - time.sleep(0.5) - (bridge, address) = ssock.accept() bridge.settimeout(20) diff --git a/test/broker/06-bridge-b2br-disconnect-qos2.py b/test/broker/06-bridge-b2br-disconnect-qos2.py index 94e31ea5..adaa5d04 100755 --- a/test/broker/06-bridge-b2br-disconnect-qos2.py +++ b/test/broker/06-bridge-b2br-disconnect-qos2.py @@ -46,11 +46,9 @@ ssock.settimeout(40) ssock.bind(('', 1888)) ssock.listen(5) -broker = subprocess.Popen(['../../src/mosquitto', '-c', '06-bridge-b2br-disconnect-qos2.conf'], stderr=subprocess.PIPE) +broker = mosq_test.start_broker(filename=os.path.basename(__file__), port=1889) try: - time.sleep(0.5) - (bridge, address) = ssock.accept() bridge.settimeout(20) diff --git a/test/broker/06-bridge-br2b-disconnect-qos1.py b/test/broker/06-bridge-br2b-disconnect-qos1.py index 8a21e10c..20546a23 100755 --- a/test/broker/06-bridge-br2b-disconnect-qos1.py +++ b/test/broker/06-bridge-br2b-disconnect-qos1.py @@ -40,11 +40,9 @@ ssock.settimeout(40) ssock.bind(('', 1888)) ssock.listen(5) -broker = subprocess.Popen(['../../src/mosquitto', '-c', '06-bridge-br2b-disconnect-qos1.conf'], stderr=subprocess.PIPE) +broker = mosq_test.start_broker(filename=os.path.basename(__file__), port=1889) try: - time.sleep(0.5) - (bridge, address) = ssock.accept() bridge.settimeout(20) diff --git a/test/broker/06-bridge-br2b-disconnect-qos2.py b/test/broker/06-bridge-br2b-disconnect-qos2.py index e5bb9156..797bdc41 100755 --- a/test/broker/06-bridge-br2b-disconnect-qos2.py +++ b/test/broker/06-bridge-br2b-disconnect-qos2.py @@ -47,11 +47,9 @@ ssock.settimeout(40) ssock.bind(('', 1888)) ssock.listen(5) -broker = subprocess.Popen(['../../src/mosquitto', '-c', '06-bridge-br2b-disconnect-qos2.conf'], stderr=subprocess.PIPE) +broker = mosq_test.start_broker(filename=os.path.basename(__file__), port=1889) try: - time.sleep(0.5) - (bridge, address) = ssock.accept() bridge.settimeout(20) diff --git a/test/broker/06-bridge-reconnect-local-out.py b/test/broker/06-bridge-reconnect-local-out.py index 8383636a..f72a4858 100755 --- a/test/broker/06-bridge-reconnect-local-out.py +++ b/test/broker/06-bridge-reconnect-local-out.py @@ -31,18 +31,17 @@ try: except OSError: pass -broker = subprocess.Popen(['../../src/mosquitto', '-p', '1888'], stderr=subprocess.PIPE) -time.sleep(0.5) -local_broker = subprocess.Popen(['../../src/mosquitto', '-c', '06-bridge-reconnect-local-out.conf'], stderr=subprocess.PIPE) -time.sleep(0.5) +cmd = ['../../src/mosquitto', '-p', '1888'] +broker = mosq_test.start_broker(filename=os.path.basename(__file__), cmd=cmd) + +local_cmd = ['../../src/mosquitto', '-c', '06-bridge-reconnect-local-out.conf'] +local_broker = mosq_test.start_broker(cmd=local_cmd, filename=os.path.basename(__file__)+'_local1') local_broker.terminate() local_broker.wait() -local_broker = subprocess.Popen(['../../src/mosquitto', '-c', '06-bridge-reconnect-local-out.conf'], stderr=subprocess.PIPE) +local_broker = mosq_test.start_broker(cmd=local_cmd, filename=os.path.basename(__file__)+'_local2') pub = None try: - time.sleep(0.5) - sock = mosq_test.do_client_connect(connect_packet, connack_packet) sock.send(subscribe_packet) diff --git a/test/broker/07-will-null-topic.py b/test/broker/07-will-null-topic.py index b6d2fbb9..83247422 100755 --- a/test/broker/07-will-null-topic.py +++ b/test/broker/07-will-null-topic.py @@ -18,11 +18,10 @@ keepalive = 60 connect_packet = mosq_test.gen_connect("will-null-topic", keepalive=keepalive, will_topic="", will_payload=struct.pack("!4sB7s", "will", 0, "message")) connack_packet = mosq_test.gen_connack(rc=2) -broker = subprocess.Popen(['../../src/mosquitto', '-p', '1888'], stderr=subprocess.PIPE) +cmd = ['../../src/mosquitto', '-p', '1888'] +broker = mosq_test.start_broker(filename=os.path.basename(__file__), cmd=cmd) try: - time.sleep(0.5) - sock = mosq_test.do_client_connect(connect_packet, "", timeout=30) rc = 0 sock.close() diff --git a/test/broker/07-will-null.py b/test/broker/07-will-null.py index fff733c6..e2e64a21 100755 --- a/test/broker/07-will-null.py +++ b/test/broker/07-will-null.py @@ -26,11 +26,10 @@ suback_packet = mosq_test.gen_suback(mid, 0) publish_packet = mosq_test.gen_publish("will/null/test", qos=0) -broker = subprocess.Popen(['../../src/mosquitto', '-p', '1888'], stderr=subprocess.PIPE) +cmd = ['../../src/mosquitto', '-p', '1888'] +broker = mosq_test.start_broker(filename=os.path.basename(__file__), cmd=cmd) try: - time.sleep(0.5) - sock = mosq_test.do_client_connect(connect_packet, connack_packet, timeout=30) sock.send(subscribe_packet) diff --git a/test/broker/07-will-qos0.py b/test/broker/07-will-qos0.py index 552450b8..a6616c4b 100755 --- a/test/broker/07-will-qos0.py +++ b/test/broker/07-will-qos0.py @@ -25,11 +25,10 @@ suback_packet = mosq_test.gen_suback(mid, 0) publish_packet = mosq_test.gen_publish("will/qos0/test", qos=0, payload="will-message") -broker = subprocess.Popen(['../../src/mosquitto', '-p', '1888'], stderr=subprocess.PIPE) +cmd = ['../../src/mosquitto', '-p', '1888'] +broker = mosq_test.start_broker(filename=os.path.basename(__file__), cmd=cmd) try: - time.sleep(0.5) - sock = mosq_test.do_client_connect(connect_packet, connack_packet, timeout=30) sock.send(subscribe_packet) diff --git a/test/broker/08-ssl-bridge.py b/test/broker/08-ssl-bridge.py index fc84be68..22fe2ede 100755 --- a/test/broker/08-ssl-bridge.py +++ b/test/broker/08-ssl-bridge.py @@ -33,11 +33,9 @@ ssock.settimeout(20) ssock.bind(('', 1888)) ssock.listen(5) -broker = subprocess.Popen(['../../src/mosquitto', '-v', '-c', '08-ssl-bridge.conf'], stderr=subprocess.PIPE) +broker = mosq_test.start_broker(filename=os.path.basename(__file__), port=1889) try: - time.sleep(0.5) - (bridge, address) = ssock.accept() bridge.settimeout(20) diff --git a/test/broker/08-ssl-connect-cert-auth-crl.conf b/test/broker/08-ssl-connect-cert-auth-crl.conf index a8871863..93353d6d 100644 --- a/test/broker/08-ssl-connect-cert-auth-crl.conf +++ b/test/broker/08-ssl-connect-cert-auth-crl.conf @@ -5,3 +5,5 @@ certfile ../ssl/server.crt keyfile ../ssl/server.key require_certificate true crlfile ../ssl/crl.pem + +listener 1889 diff --git a/test/broker/08-ssl-connect-cert-auth-crl.py b/test/broker/08-ssl-connect-cert-auth-crl.py index fd65c442..c783d784 100755 --- a/test/broker/08-ssl-connect-cert-auth-crl.py +++ b/test/broker/08-ssl-connect-cert-auth-crl.py @@ -23,11 +23,9 @@ keepalive = 10 connect_packet = mosq_test.gen_connect("connect-success-test", keepalive=keepalive) connack_packet = mosq_test.gen_connack(rc=0) -broker = subprocess.Popen(['../../src/mosquitto', '-c', '08-ssl-connect-cert-auth-crl.conf'], stderr=subprocess.PIPE) +broker = mosq_test.start_broker(filename=os.path.basename(__file__), port=1889) try: - time.sleep(0.5) - sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) ssock = ssl.wrap_socket(sock, ca_certs="../ssl/test-root-ca.crt", certfile="../ssl/client.crt", keyfile="../ssl/client.key", cert_reqs=ssl.CERT_REQUIRED) ssock.settimeout(20) diff --git a/test/broker/08-ssl-connect-cert-auth-expired.conf b/test/broker/08-ssl-connect-cert-auth-expired.conf index c873699e..8c55017a 100644 --- a/test/broker/08-ssl-connect-cert-auth-expired.conf +++ b/test/broker/08-ssl-connect-cert-auth-expired.conf @@ -4,3 +4,5 @@ cafile ../ssl/all-ca.crt certfile ../ssl/server.crt keyfile ../ssl/server.key require_certificate true + +listener 1889 diff --git a/test/broker/08-ssl-connect-cert-auth-expired.py b/test/broker/08-ssl-connect-cert-auth-expired.py index 59507921..2765f743 100755 --- a/test/broker/08-ssl-connect-cert-auth-expired.py +++ b/test/broker/08-ssl-connect-cert-auth-expired.py @@ -26,11 +26,9 @@ keepalive = 10 connect_packet = mosq_test.gen_connect("connect-success-test", keepalive=keepalive) connack_packet = mosq_test.gen_connack(rc=0) -broker = subprocess.Popen(['../../src/mosquitto', '-v', '-c', '08-ssl-connect-cert-auth.conf'], stderr=subprocess.PIPE) +broker = mosq_test.start_broker(filename=os.path.basename(__file__), port=1889) try: - time.sleep(0.5) - sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) ssock = ssl.wrap_socket(sock, ca_certs="../ssl/test-root-ca.crt", certfile="../ssl/client-expired.crt", keyfile="../ssl/client.key", cert_reqs=ssl.CERT_REQUIRED) ssock.settimeout(20) diff --git a/test/broker/08-ssl-connect-cert-auth-revoked.conf b/test/broker/08-ssl-connect-cert-auth-revoked.conf index a8871863..31c36512 100644 --- a/test/broker/08-ssl-connect-cert-auth-revoked.conf +++ b/test/broker/08-ssl-connect-cert-auth-revoked.conf @@ -1,7 +1,9 @@ -port 1888 +port 1889 +listener 1888 cafile ../ssl/all-ca.crt certfile ../ssl/server.crt keyfile ../ssl/server.key require_certificate true crlfile ../ssl/crl.pem + diff --git a/test/broker/08-ssl-connect-cert-auth-revoked.py b/test/broker/08-ssl-connect-cert-auth-revoked.py index b712171c..65e952c1 100755 --- a/test/broker/08-ssl-connect-cert-auth-revoked.py +++ b/test/broker/08-ssl-connect-cert-auth-revoked.py @@ -23,11 +23,9 @@ keepalive = 10 connect_packet = mosq_test.gen_connect("connect-revoked-test", keepalive=keepalive) connack_packet = mosq_test.gen_connack(rc=0) -broker = subprocess.Popen(['../../src/mosquitto', '-c', '08-ssl-connect-cert-auth-revoked.conf'], stderr=subprocess.PIPE) +broker = mosq_test.start_broker(filename=os.path.basename(__file__), port=1889) try: - time.sleep(0.5) - sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) ssock = ssl.wrap_socket(sock, ca_certs="../ssl/test-root-ca.crt", certfile="../ssl/client-revoked.crt", keyfile="../ssl/client-revoked.key", cert_reqs=ssl.CERT_REQUIRED) ssock.settimeout(20) diff --git a/test/broker/08-ssl-connect-cert-auth-without.conf b/test/broker/08-ssl-connect-cert-auth-without.conf index c873699e..c85c24fd 100644 --- a/test/broker/08-ssl-connect-cert-auth-without.conf +++ b/test/broker/08-ssl-connect-cert-auth-without.conf @@ -1,6 +1,8 @@ -port 1888 +port 1889 +listener 1888 cafile ../ssl/all-ca.crt certfile ../ssl/server.crt keyfile ../ssl/server.key require_certificate true + diff --git a/test/broker/08-ssl-connect-cert-auth-without.py b/test/broker/08-ssl-connect-cert-auth-without.py index 5eda97ce..54599fec 100755 --- a/test/broker/08-ssl-connect-cert-auth-without.py +++ b/test/broker/08-ssl-connect-cert-auth-without.py @@ -27,9 +27,7 @@ keepalive = 10 connect_packet = mosq_test.gen_connect("connect-cert-test", keepalive=keepalive) connack_packet = mosq_test.gen_connack(rc=0) -broker = subprocess.Popen(['../../src/mosquitto', '-c', '08-ssl-connect-cert-auth-without.conf'], stderr=subprocess.PIPE) - -time.sleep(0.5) +broker = mosq_test.start_broker(filename=os.path.basename(__file__), port=1889) sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) ssock = ssl.wrap_socket(sock, ca_certs="../ssl/test-root-ca.crt", cert_reqs=ssl.CERT_REQUIRED) diff --git a/test/broker/08-ssl-connect-cert-auth.conf b/test/broker/08-ssl-connect-cert-auth.conf index c873699e..a37ed225 100644 --- a/test/broker/08-ssl-connect-cert-auth.conf +++ b/test/broker/08-ssl-connect-cert-auth.conf @@ -1,6 +1,9 @@ -port 1888 +port 1889 +listener 1888 cafile ../ssl/all-ca.crt certfile ../ssl/server.crt keyfile ../ssl/server.key require_certificate true + + diff --git a/test/broker/08-ssl-connect-cert-auth.py b/test/broker/08-ssl-connect-cert-auth.py index d06a8d52..42ba6510 100755 --- a/test/broker/08-ssl-connect-cert-auth.py +++ b/test/broker/08-ssl-connect-cert-auth.py @@ -25,11 +25,9 @@ keepalive = 10 connect_packet = mosq_test.gen_connect("connect-success-test", keepalive=keepalive) connack_packet = mosq_test.gen_connack(rc=0) -broker = subprocess.Popen(['../../src/mosquitto', '-c', '08-ssl-connect-cert-auth.conf'], stderr=subprocess.PIPE) +broker = mosq_test.start_broker(filename=os.path.basename(__file__), port=1889) try: - time.sleep(0.5) - sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) ssock = ssl.wrap_socket(sock, ca_certs="../ssl/test-root-ca.crt", certfile="../ssl/client.crt", keyfile="../ssl/client.key", cert_reqs=ssl.CERT_REQUIRED) ssock.settimeout(20) diff --git a/test/broker/08-ssl-connect-identity.conf b/test/broker/08-ssl-connect-identity.conf index bb7a4fd3..fcc5f1a5 100644 --- a/test/broker/08-ssl-connect-identity.conf +++ b/test/broker/08-ssl-connect-identity.conf @@ -5,3 +5,5 @@ certfile ../ssl/server.crt keyfile ../ssl/server.key use_identity_as_username true + +listener 1889 diff --git a/test/broker/08-ssl-connect-identity.py b/test/broker/08-ssl-connect-identity.py index 560e6752..c929a922 100755 --- a/test/broker/08-ssl-connect-identity.py +++ b/test/broker/08-ssl-connect-identity.py @@ -24,11 +24,9 @@ keepalive = 10 connect_packet = mosq_test.gen_connect("connect-identity-test", keepalive=keepalive) connack_packet = mosq_test.gen_connack(rc=0) -broker = subprocess.Popen(['../../src/mosquitto', '-c', '08-ssl-connect-identity.conf'], stderr=subprocess.PIPE) +broker = mosq_test.start_broker(filename=os.path.basename(__file__), port=1889) try: - time.sleep(0.5) - sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) ssock = ssl.wrap_socket(sock, ca_certs="../ssl/test-root-ca.crt", certfile="../ssl/client.crt", keyfile="../ssl/client.key", cert_reqs=ssl.CERT_REQUIRED) ssock.settimeout(20) diff --git a/test/broker/08-ssl-connect-no-auth-wrong-ca.conf b/test/broker/08-ssl-connect-no-auth-wrong-ca.conf index 088ee5e4..dba44524 100644 --- a/test/broker/08-ssl-connect-no-auth-wrong-ca.conf +++ b/test/broker/08-ssl-connect-no-auth-wrong-ca.conf @@ -3,3 +3,5 @@ port 1888 cafile ../ssl/all-ca.crt certfile ../ssl/server.crt keyfile ../ssl/server.key + +listener 1889 diff --git a/test/broker/08-ssl-connect-no-auth-wrong-ca.py b/test/broker/08-ssl-connect-no-auth-wrong-ca.py index 978e144e..51005182 100755 --- a/test/broker/08-ssl-connect-no-auth-wrong-ca.py +++ b/test/broker/08-ssl-connect-no-auth-wrong-ca.py @@ -25,9 +25,7 @@ keepalive = 10 connect_packet = mosq_test.gen_connect("connect-success-test", keepalive=keepalive) connack_packet = mosq_test.gen_connack(rc=0) -broker = subprocess.Popen(['../../src/mosquitto', '-c', '08-ssl-connect-no-auth-wrong-ca.conf'], stderr=subprocess.PIPE) - -time.sleep(0.5) +broker = mosq_test.start_broker(filename=os.path.basename(__file__), port=1889) sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) ssock = ssl.wrap_socket(sock, ca_certs="../ssl/test-alt-ca.crt", cert_reqs=ssl.CERT_REQUIRED) diff --git a/test/broker/08-ssl-connect-no-auth.conf b/test/broker/08-ssl-connect-no-auth.conf index ab6099ed..28de36ac 100644 --- a/test/broker/08-ssl-connect-no-auth.conf +++ b/test/broker/08-ssl-connect-no-auth.conf @@ -1,5 +1,6 @@ -port 1888 +port 1889 +listener 1888 cafile ../ssl/all-ca.crt certfile ../ssl/server.crt keyfile ../ssl/server.key diff --git a/test/broker/08-ssl-connect-no-auth.py b/test/broker/08-ssl-connect-no-auth.py index 611766d4..27adf48a 100755 --- a/test/broker/08-ssl-connect-no-auth.py +++ b/test/broker/08-ssl-connect-no-auth.py @@ -25,11 +25,9 @@ keepalive = 10 connect_packet = mosq_test.gen_connect("connect-success-test", keepalive=keepalive) connack_packet = mosq_test.gen_connack(rc=0) -broker = subprocess.Popen(['../../src/mosquitto', '-c', '08-ssl-connect-no-auth.conf'], stderr=subprocess.PIPE) +broker = mosq_test.start_broker(filename=os.path.basename(__file__), port=1889) try: - time.sleep(0.5) - sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) ssock = ssl.wrap_socket(sock, ca_certs="../ssl/test-root-ca.crt", cert_reqs=ssl.CERT_REQUIRED, ssl_version=ssl.PROTOCOL_TLSv1) ssock.settimeout(20) diff --git a/test/broker/08-ssl-connect-no-identity.conf b/test/broker/08-ssl-connect-no-identity.conf index bb7a4fd3..fcc5f1a5 100644 --- a/test/broker/08-ssl-connect-no-identity.conf +++ b/test/broker/08-ssl-connect-no-identity.conf @@ -5,3 +5,5 @@ certfile ../ssl/server.crt keyfile ../ssl/server.key use_identity_as_username true + +listener 1889 diff --git a/test/broker/08-ssl-connect-no-identity.py b/test/broker/08-ssl-connect-no-identity.py index 7c76b713..ecd59520 100755 --- a/test/broker/08-ssl-connect-no-identity.py +++ b/test/broker/08-ssl-connect-no-identity.py @@ -24,11 +24,9 @@ keepalive = 10 connect_packet = mosq_test.gen_connect("connect-no-identity-test", keepalive=keepalive) connack_packet = mosq_test.gen_connack(rc=4) -broker = subprocess.Popen(['../../src/mosquitto', '-c', '08-ssl-connect-no-identity.conf'], stderr=subprocess.PIPE) +broker = mosq_test.start_broker(filename=os.path.basename(__file__), port=1889) try: - time.sleep(0.5) - sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) ssock = ssl.wrap_socket(sock, ca_certs="../ssl/test-root-ca.crt", cert_reqs=ssl.CERT_REQUIRED) ssock.settimeout(20) diff --git a/test/broker/08-tls-psk-bridge.py b/test/broker/08-tls-psk-bridge.py index dd827e95..ec868e92 100755 --- a/test/broker/08-tls-psk-bridge.py +++ b/test/broker/08-tls-psk-bridge.py @@ -43,13 +43,12 @@ suback_packet = mosq_test.gen_suback(mid, 0) publish_packet = mosq_test.gen_publish(topic="psk/test", payload="message", qos=0) -broker = subprocess.Popen(['../../src/mosquitto', '-c', '08-tls-psk-bridge.conf'], stderr=subprocess.PIPE) -bridge = subprocess.Popen(['../../src/mosquitto', '-c', '08-tls-psk-bridge.conf2'], stderr=subprocess.PIPE) +bridge_cmd = ['../../src/mosquitto', '-c', '08-tls-psk-bridge.conf2'] +broker = mosq_test.start_broker(filename=os.path.basename(__file__)) +bridge = mosq_test.start_broker(filename=os.path.basename(__file__)+'_bridge', cmd=bridge_cmd, port=1890) pub = None try: - time.sleep(0.5) - sock = mosq_test.do_client_connect(connect_packet, connack_packet, timeout=30) sock.send(subscribe_packet) diff --git a/test/broker/08-tls-psk-pub.py b/test/broker/08-tls-psk-pub.py index 9bdc1ca0..c388e830 100755 --- a/test/broker/08-tls-psk-pub.py +++ b/test/broker/08-tls-psk-pub.py @@ -43,11 +43,9 @@ suback_packet = mosq_test.gen_suback(mid, 0) publish_packet = mosq_test.gen_publish(topic="psk/test", payload="message", qos=0) -broker = subprocess.Popen(['../../src/mosquitto', '-c', '08-tls-psk-pub.conf'], stderr=subprocess.PIPE) +broker = mosq_test.start_broker(filename=os.path.basename(__file__), port=1889) try: - time.sleep(0.5) - sock = mosq_test.do_client_connect(connect_packet, connack_packet, port=1889, timeout=20) sock.send(subscribe_packet) diff --git a/test/broker/09-plugin-auth-unpwd-fail.py b/test/broker/09-plugin-auth-unpwd-fail.py index 19923c98..bbf5c289 100755 --- a/test/broker/09-plugin-auth-unpwd-fail.py +++ b/test/broker/09-plugin-auth-unpwd-fail.py @@ -20,11 +20,9 @@ keepalive = 10 connect_packet = mosq_test.gen_connect("connect-uname-pwd-test", keepalive=keepalive, username="test-username", password="wrong") connack_packet = mosq_test.gen_connack(rc=4) -broker = subprocess.Popen(['../../src/mosquitto', '-c', '09-plugin-auth-unpwd-fail.conf'], stderr=subprocess.PIPE) +broker = mosq_test.start_broker(filename=os.path.basename(__file__)) try: - time.sleep(0.5) - sock = mosq_test.do_client_connect(connect_packet, connack_packet, timeout=20) rc = 0 diff --git a/test/broker/09-plugin-auth-unpwd-success.py b/test/broker/09-plugin-auth-unpwd-success.py index 4e9f889f..3277cea4 100755 --- a/test/broker/09-plugin-auth-unpwd-success.py +++ b/test/broker/09-plugin-auth-unpwd-success.py @@ -20,11 +20,9 @@ keepalive = 10 connect_packet = mosq_test.gen_connect("connect-uname-pwd-test", keepalive=keepalive, username="test-username", password="cnwTICONIURW") connack_packet = mosq_test.gen_connack(rc=0) -broker = subprocess.Popen(['../../src/mosquitto', '-c', '09-plugin-auth-unpwd-success.conf'], stderr=subprocess.PIPE) +broker = mosq_test.start_broker(filename=os.path.basename(__file__)) try: - time.sleep(0.5) - sock = mosq_test.do_client_connect(connect_packet, connack_packet, timeout=20) rc = 0 sock.close() diff --git a/test/broker/10-listener-mount-point.py b/test/broker/10-listener-mount-point.py index 8bae43f1..c482c049 100755 --- a/test/broker/10-listener-mount-point.py +++ b/test/broker/10-listener-mount-point.py @@ -24,11 +24,9 @@ suback_packet = mosq_test.gen_suback(mid, 0) publish_packet = mosq_test.gen_publish("mount/test", qos=0, payload="mount point") -broker = subprocess.Popen(['../../src/mosquitto', '-c', '10-listener-mount-point.conf'], stderr=subprocess.PIPE) +broker = mosq_test.start_broker(filename=os.path.basename(__file__)) try: - time.sleep(0.5) - sock = mosq_test.do_client_connect(connect_packet, connack_packet, timeout=20) sock.send(subscribe_packet) diff --git a/test/mosq_test.py b/test/mosq_test.py index 74534d2d..7a3d788b 100644 --- a/test/mosq_test.py +++ b/test/mosq_test.py @@ -1,5 +1,32 @@ +import errno +import os import socket +import subprocess import struct +import time + +def start_broker(filename, cmd=None, port=1888): + delay = 0.1 + if cmd is None: + cmd = ['../../src/mosquitto', '-v', '-c', filename.replace('.py', '.conf')] + if os.environ.get('MOSQ_USE_VALGRIND') is not None: + cmd = ['valgrind', '-q', '--log-file='+filename+'.vglog'] + cmd + delay = 0.5 + + broker = subprocess.Popen(cmd, stderr=subprocess.PIPE) + for i in range(0, 20): + time.sleep(delay) + c = None + try: + c = socket.create_connection(("localhost", port)) + except socket.error as err: + if err.errno != errno.ECONNREFUSED: + raise + + if c is not None: + c.close() + return broker + raise IOError def expect_packet(sock, name, expected): if len(expected) > 0: