def get_client_id(self): """Get client ID (username, passwd) tuple. Not thread-safe (TODO: Why?). """ val = _zookeeper.client_id(self.zk_handle) assert isinstance(val, tuple) and len(val) == 2 return val
def testclientid(self): cv = threading.Condition() self.connected = False def connection_watcher(handle, type, state, path): cv.acquire() self.connected = True cv.notify() cv.release() cv.acquire() self.handle = zookeeper.init(self.host, connection_watcher,10000,(123456,"mypassword")) self.assertEqual(self.handle, zookeeper.OK) cv.wait(15.0) cv.release() self.assertEqual(self.connected, True, "Connection timed out to " + self.host) (cid,passwd) = zookeeper.client_id(self.handle) self.assertEqual(cid,123456) self.assertEqual(passwd,"mypassword")