2929from cassandra .policies import HostDistance , SimpleConvictionPolicy
3030import pytest
3131
32+ from tests .unit .util import HashableMock
33+
3234LOGGER = logging .getLogger (__name__ )
3335
3436
@@ -38,13 +40,13 @@ class _PoolTests(unittest.TestCase):
3840 uses_single_connection = None
3941
4042 def make_session (self ):
41- session = NonCallableMagicMock (spec = Session , keyspace = 'foobarkeyspace' )
43+ session = NonCallableMagicMock (spec = Session , keyspace = 'foobarkeyspace' , _trash = [] )
4244 return session
4345
4446 def test_borrow_and_return (self ):
4547 host = Mock (spec = Host , address = 'ip1' )
4648 session = self .make_session ()
47- conn = NonCallableMagicMock (spec = Connection , in_flight = 0 , is_defunct = False , is_closed = False , max_request_id = 100 )
49+ conn = HashableMock (spec = Connection , in_flight = 0 , is_defunct = False , is_closed = False , max_request_id = 100 )
4850 session .cluster .connection_factory .return_value = conn
4951
5052 pool = self .PoolImpl (host , HostDistance .LOCAL , session )
@@ -63,7 +65,7 @@ def test_borrow_and_return(self):
6365 def test_failed_wait_for_connection (self ):
6466 host = Mock (spec = Host , address = 'ip1' )
6567 session = self .make_session ()
66- conn = NonCallableMagicMock (spec = Connection , in_flight = 0 , is_defunct = False , is_closed = False , max_request_id = 100 )
68+ conn = HashableMock (spec = Connection , in_flight = 0 , is_defunct = False , is_closed = False , max_request_id = 100 )
6769 session .cluster .connection_factory .return_value = conn
6870
6971 pool = self .PoolImpl (host , HostDistance .LOCAL , session )
@@ -82,7 +84,7 @@ def test_failed_wait_for_connection(self):
8284 def test_successful_wait_for_connection (self ):
8385 host = Mock (spec = Host , address = 'ip1' )
8486 session = self .make_session ()
85- conn = NonCallableMagicMock (spec = Connection , in_flight = 0 , is_defunct = False , is_closed = False , max_request_id = 100 ,
87+ conn = HashableMock (spec = Connection , in_flight = 0 , is_defunct = False , is_closed = False , max_request_id = 100 ,
8688 lock = Lock ())
8789 session .cluster .connection_factory .return_value = conn
8890
@@ -107,7 +109,7 @@ def get_second_conn():
107109 def test_spawn_when_at_max (self ):
108110 host = Mock (spec = Host , address = 'ip1' )
109111 session = self .make_session ()
110- conn = NonCallableMagicMock (spec = Connection , in_flight = 0 , is_defunct = False , is_closed = False , max_request_id = 100 )
112+ conn = HashableMock (spec = Connection , in_flight = 0 , is_defunct = False , is_closed = False , max_request_id = 100 )
111113 conn .max_request_id = 100
112114 session .cluster .connection_factory .return_value = conn
113115
@@ -131,7 +133,7 @@ def test_spawn_when_at_max(self):
131133 def test_return_defunct_connection (self ):
132134 host = Mock (spec = Host , address = 'ip1' )
133135 session = self .make_session ()
134- conn = NonCallableMagicMock (spec = Connection , in_flight = 0 , is_defunct = False , is_closed = False ,
136+ conn = HashableMock (spec = Connection , in_flight = 0 , is_defunct = False , is_closed = False ,
135137 max_request_id = 100 , signaled_error = False )
136138 session .cluster .connection_factory .return_value = conn
137139
@@ -151,7 +153,7 @@ def test_return_defunct_connection(self):
151153 def test_return_defunct_connection_on_down_host (self ):
152154 host = Mock (spec = Host , address = 'ip1' )
153155 session = self .make_session ()
154- conn = NonCallableMagicMock (spec = Connection , in_flight = 0 , is_defunct = False , is_closed = False ,
156+ conn = HashableMock (spec = Connection , in_flight = 0 , is_defunct = False , is_closed = False ,
155157 max_request_id = 100 , signaled_error = False ,
156158 orphaned_threshold_reached = False )
157159 session .cluster .connection_factory .return_value = conn
@@ -180,7 +182,7 @@ def test_return_defunct_connection_on_down_host(self):
180182 def test_return_closed_connection (self ):
181183 host = Mock (spec = Host , address = 'ip1' )
182184 session = self .make_session ()
183- conn = NonCallableMagicMock (spec = Connection , in_flight = 0 , is_defunct = False , is_closed = True , max_request_id = 100 ,
185+ conn = HashableMock (spec = Connection , in_flight = 0 , is_defunct = False , is_closed = True , max_request_id = 100 ,
184186 signaled_error = False , orphaned_threshold_reached = False )
185187 session .cluster .connection_factory .return_value = conn
186188
@@ -247,7 +249,7 @@ def submit(self, fn, *args, **kwargs):
247249 return self .cluster .executor .submit (fn , * args , ** kwargs )
248250
249251 def mock_connection_factory (self , * args , ** kwargs ):
250- connection = MagicMock ()
252+ connection = HashableMock ()
251253 connection .is_shutdown = False
252254 connection .is_defunct = False
253255 connection .is_closed = False
@@ -267,7 +269,7 @@ def executor_init(self, *args):
267269 LOGGER .info ("Testing fast shutdown %d / 20 times" , attempt_num + 1 )
268270 host = MagicMock ()
269271 host .endpoint = "1.2.3.4"
270- session = MockSession ()
272+ session = self . make_session ()
271273
272274 pool = HostConnection (host = host , host_distance = HostDistance .REMOTE , session = session )
273275 LOGGER .info ("Initialized pool %s" , pool )
0 commit comments