# Test whether a client sends a correct UNSUBSCRIBE packet. import context import paho_test rc = 1 keepalive = 60 connect_packet = paho_test.gen_connect("unsubscribe-test", keepalive=keepalive) connack_packet = paho_test.gen_connack(rc=0) disconnect_packet = paho_test.gen_disconnect() mid = 1 unsubscribe_packet = paho_test.gen_unsubscribe(mid, "unsubscribe/test") unsuback_packet = paho_test.gen_unsuback(mid) sock = paho_test.create_server_socket() client = context.start_client() try: (conn, address) = sock.accept() conn.settimeout(10) paho_test.expect_packet(conn, "connect", connect_packet) conn.send(connack_packet) paho_test.expect_packet(conn, "unsubscribe", unsubscribe_packet) conn.send(unsuback_packet)
cmd_subfolder = os.path.realpath(os.path.abspath(os.path.join(os.path.split(inspect.getfile( inspect.currentframe() ))[0],".."))) if cmd_subfolder not in sys.path: sys.path.insert(0, cmd_subfolder) import paho_test rc = 1 keepalive = 60 connect_packet = paho_test.gen_connect("unsubscribe-test", keepalive=keepalive) connack_packet = paho_test.gen_connack(rc=0) disconnect_packet = paho_test.gen_disconnect() mid = 1 unsubscribe_packet = paho_test.gen_unsubscribe(mid, "unsubscribe/test") unsuback_packet = paho_test.gen_unsuback(mid) sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) sock.settimeout(10) sock.bind(('', 1888)) sock.listen(5) client_args = sys.argv[1:] env = dict(os.environ) try: pp = env['PYTHONPATH'] except KeyError: pp = '' env['PYTHONPATH'] = '../../src:'+pp client = subprocess.Popen(client_args, env=env)