@@ -53,7 +53,7 @@ async def test_init(self, redis_session):
5353 assert redis_session .messages_key == "test_messages:test_session_123"
5454 assert redis_session ._redis_client is None
5555
56- @patch (' agents.memory.providers.redis.redis.from_url' )
56+ @patch (" agents.memory.providers.redis.redis.from_url" )
5757 async def test_get_redis_client (self , mock_from_url , redis_session , mock_redis ):
5858 """Test Redis client creation."""
5959 mock_from_url .return_value = mock_redis
@@ -66,12 +66,14 @@ async def test_get_redis_client(self, mock_from_url, redis_session, mock_redis):
6666 "redis://localhost:6379" ,
6767 db = 0 ,
6868 decode_responses = True ,
69- retry_on_error = [redis_session ._get_redis_client .__globals__ ['redis' ].BusyLoadingError ,
70- redis_session ._get_redis_client .__globals__ ['redis' ].ConnectionError ],
69+ retry_on_error = [
70+ redis_session ._get_redis_client .__globals__ ["redis" ].BusyLoadingError ,
71+ redis_session ._get_redis_client .__globals__ ["redis" ].ConnectionError ,
72+ ],
7173 retry_on_timeout = True ,
7274 )
7375
74- @patch (' agents.memory.providers.redis.redis.from_url' )
76+ @patch (" agents.memory.providers.redis.redis.from_url" )
7577 async def test_get_redis_client_reuse (self , mock_from_url , redis_session , mock_redis ):
7678 """Test that Redis client is reused."""
7779 mock_from_url .return_value = mock_redis
@@ -82,7 +84,7 @@ async def test_get_redis_client_reuse(self, mock_from_url, redis_session, mock_r
8284 assert client == mock_redis
8385 mock_from_url .assert_not_called ()
8486
85- @patch (' agents.memory.providers.redis.time.time' )
87+ @patch (" agents.memory.providers.redis.time.time" )
8688 async def test_ensure_session_exists_new_session (self , mock_time , redis_session , mock_redis ):
8789 """Test creating new session metadata."""
8890 mock_time .return_value = 1234567890.0
@@ -102,7 +104,7 @@ async def test_ensure_session_exists_new_session(self, mock_time, redis_session,
102104 "session_id" : "test_session_123" ,
103105 "created_at" : "1234567890.0" ,
104106 "updated_at" : "1234567890.0" ,
105- }
107+ },
106108 )
107109 mock_redis .expire .assert_any_call ("test_session:test_session_123" , 3600 )
108110
@@ -115,20 +117,18 @@ async def test_ensure_session_exists_existing_session(self, redis_session, mock_
115117 mock_redis .hset .assert_not_called ()
116118 assert mock_redis .expire .call_count == 2 # TTL set for both keys
117119
118- @patch (' agents.memory.providers.redis.time.time' )
120+ @patch (" agents.memory.providers.redis.time.time" )
119121 async def test_update_session_timestamp (self , mock_time , redis_session , mock_redis ):
120122 """Test updating session timestamp."""
121123 mock_time .return_value = 1234567890.0
122124
123125 await redis_session ._update_session_timestamp (mock_redis )
124126
125127 mock_redis .hset .assert_called_once_with (
126- "test_session:test_session_123" ,
127- "updated_at" ,
128- "1234567890.0"
128+ "test_session:test_session_123" , "updated_at" , "1234567890.0"
129129 )
130130
131- @patch (' agents.memory.providers.redis.redis.from_url' )
131+ @patch (" agents.memory.providers.redis.redis.from_url" )
132132 async def test_get_items_no_limit (self , mock_from_url , redis_session , mock_redis , sample_items ):
133133 """Test retrieving all items without limit."""
134134 mock_from_url .return_value = mock_redis
@@ -139,7 +139,7 @@ async def test_get_items_no_limit(self, mock_from_url, redis_session, mock_redis
139139 mock_redis .lrange .assert_called_once_with ("test_messages:test_session_123" , 0 , - 1 )
140140 assert items == sample_items
141141
142- @patch (' agents.memory.providers.redis.redis.from_url' )
142+ @patch (" agents.memory.providers.redis.redis.from_url" )
143143 async def test_get_items_with_limit (
144144 self , mock_from_url , redis_session , mock_redis , sample_items
145145 ):
@@ -152,7 +152,7 @@ async def test_get_items_with_limit(
152152 mock_redis .lrange .assert_called_once_with ("test_messages:test_session_123" , - 2 , - 1 )
153153 assert items == sample_items [- 2 :]
154154
155- @patch (' agents.memory.providers.redis.redis.from_url' )
155+ @patch (" agents.memory.providers.redis.redis.from_url" )
156156 async def test_get_items_empty_list (self , mock_from_url , redis_session , mock_redis ):
157157 """Test retrieving items from empty session."""
158158 mock_from_url .return_value = mock_redis
@@ -162,7 +162,7 @@ async def test_get_items_empty_list(self, mock_from_url, redis_session, mock_red
162162
163163 assert items == []
164164
165- @patch (' agents.memory.providers.redis.redis.from_url' )
165+ @patch (" agents.memory.providers.redis.redis.from_url" )
166166 async def test_get_items_invalid_json (
167167 self , mock_from_url , redis_session , mock_redis , sample_items
168168 ):
@@ -171,16 +171,16 @@ async def test_get_items_invalid_json(
171171 mock_redis .lrange .return_value = [
172172 json .dumps (sample_items [0 ]),
173173 "invalid json" ,
174- json .dumps (sample_items [1 ])
174+ json .dumps (sample_items [1 ]),
175175 ]
176176
177177 items = await redis_session .get_items ()
178178
179179 # Should skip invalid JSON and return valid items
180180 assert items == [sample_items [0 ], sample_items [1 ]]
181181
182- @patch (' agents.memory.providers.redis.redis.from_url' )
183- @patch (' agents.memory.providers.redis.time.time' )
182+ @patch (" agents.memory.providers.redis.redis.from_url" )
183+ @patch (" agents.memory.providers.redis.time.time" )
184184 async def test_add_items (
185185 self , mock_time , mock_from_url , redis_session , mock_redis , sample_items
186186 ):
@@ -200,19 +200,16 @@ async def test_add_items(
200200
201201 # Verify pipeline operations
202202 mock_pipeline .rpush .assert_called_once_with (
203- "test_messages:test_session_123" ,
204- * [json .dumps (item ) for item in sample_items ]
203+ "test_messages:test_session_123" , * [json .dumps (item ) for item in sample_items ]
205204 )
206205 mock_pipeline .hset .assert_called_once_with (
207- "test_session:test_session_123" ,
208- "updated_at" ,
209- "1234567890.0"
206+ "test_session:test_session_123" , "updated_at" , "1234567890.0"
210207 )
211208 mock_pipeline .expire .assert_any_call ("test_session:test_session_123" , 3600 )
212209 mock_pipeline .expire .assert_any_call ("test_messages:test_session_123" , 3600 )
213210 mock_pipeline .execute .assert_called_once ()
214211
215- @patch (' agents.memory.providers.redis.redis.from_url' )
212+ @patch (" agents.memory.providers.redis.redis.from_url" )
216213 async def test_add_items_empty_list (self , mock_from_url , redis_session , mock_redis ):
217214 """Test adding empty list of items."""
218215 mock_from_url .return_value = mock_redis
@@ -222,7 +219,7 @@ async def test_add_items_empty_list(self, mock_from_url, redis_session, mock_red
222219 # Should not call Redis operations for empty list
223220 mock_redis .pipeline .assert_not_called ()
224221
225- @patch (' agents.memory.providers.redis.redis.from_url' )
222+ @patch (" agents.memory.providers.redis.redis.from_url" )
226223 async def test_pop_item (self , mock_from_url , redis_session , mock_redis , sample_items ):
227224 """Test popping most recent item."""
228225 mock_from_url .return_value = mock_redis
@@ -235,7 +232,7 @@ async def test_pop_item(self, mock_from_url, redis_session, mock_redis, sample_i
235232 redis_session ._update_session_timestamp .assert_called_once_with (mock_redis )
236233 assert item == sample_items [- 1 ]
237234
238- @patch (' agents.memory.providers.redis.redis.from_url' )
235+ @patch (" agents.memory.providers.redis.redis.from_url" )
239236 async def test_pop_item_empty_session (self , mock_from_url , redis_session , mock_redis ):
240237 """Test popping from empty session."""
241238 mock_from_url .return_value = mock_redis
@@ -247,7 +244,7 @@ async def test_pop_item_empty_session(self, mock_from_url, redis_session, mock_r
247244 assert item is None
248245 redis_session ._update_session_timestamp .assert_not_called ()
249246
250- @patch (' agents.memory.providers.redis.redis.from_url' )
247+ @patch (" agents.memory.providers.redis.redis.from_url" )
251248 async def test_pop_item_invalid_json (self , mock_from_url , redis_session , mock_redis ):
252249 """Test popping item with invalid JSON."""
253250 mock_from_url .return_value = mock_redis
@@ -259,26 +256,25 @@ async def test_pop_item_invalid_json(self, mock_from_url, redis_session, mock_re
259256 assert item is None
260257 redis_session ._update_session_timestamp .assert_called_once_with (mock_redis )
261258
262- @patch (' agents.memory.providers.redis.redis.from_url' )
259+ @patch (" agents.memory.providers.redis.redis.from_url" )
263260 async def test_clear_session (self , mock_from_url , redis_session , mock_redis ):
264261 """Test clearing session data."""
265262 mock_from_url .return_value = mock_redis
266263
267264 await redis_session .clear_session ()
268265
269266 mock_redis .delete .assert_called_once_with (
270- "test_session:test_session_123" ,
271- "test_messages:test_session_123"
267+ "test_session:test_session_123" , "test_messages:test_session_123"
272268 )
273269
274- @patch (' agents.memory.providers.redis.redis.from_url' )
270+ @patch (" agents.memory.providers.redis.redis.from_url" )
275271 async def test_get_session_info (self , mock_from_url , redis_session , mock_redis ):
276272 """Test retrieving session metadata."""
277273 mock_from_url .return_value = mock_redis
278274 expected_info = {
279275 "session_id" : "test_session_123" ,
280276 "created_at" : "1234567890.0" ,
281- "updated_at" : "1234567890.0"
277+ "updated_at" : "1234567890.0" ,
282278 }
283279 mock_redis .hgetall .return_value = expected_info
284280
@@ -287,7 +283,7 @@ async def test_get_session_info(self, mock_from_url, redis_session, mock_redis):
287283 mock_redis .hgetall .assert_called_once_with ("test_session:test_session_123" )
288284 assert info == expected_info
289285
290- @patch (' agents.memory.providers.redis.redis.from_url' )
286+ @patch (" agents.memory.providers.redis.redis.from_url" )
291287 async def test_get_session_info_not_exists (self , mock_from_url , redis_session , mock_redis ):
292288 """Test retrieving session metadata when session doesn't exist."""
293289 mock_from_url .return_value = mock_redis
@@ -297,7 +293,7 @@ async def test_get_session_info_not_exists(self, mock_from_url, redis_session, m
297293
298294 assert info is None
299295
300- @patch (' agents.memory.providers.redis.redis.from_url' )
296+ @patch (" agents.memory.providers.redis.redis.from_url" )
301297 async def test_get_session_size (self , mock_from_url , redis_session , mock_redis ):
302298 """Test getting session message count."""
303299 mock_from_url .return_value = mock_redis
0 commit comments