In Jython socket.socket is a function, not a class. This causes the following test failure:
====================================================================== ERROR: test_auto_reconnect_exception_when_read_preference_is_secondary (test.test_replica_set_client.TestReplicaSetClient) ---------------------------------------------------------------------- Traceback (most recent call last): File "test/__init__.py", line 326, in wrap return f(*args, **kwargs) File "test/test_replica_set_client.py", line 174, in test_auto_reconnect_exception_when_read_preference_is_secondary old_sendall = socket.socket.sendall AttributeError: 'function' object has no attribute 'sendall'
We can easily fix this by modifying the __class__ of an instance instead.