|
1 | 1 | import asyncio |
2 | | -import platform |
3 | 2 | import socket |
4 | 3 | import types |
5 | | -from unittest.mock import Mock, patch |
| 4 | +from unittest.mock import patch |
6 | 5 |
|
7 | 6 | import pytest |
8 | 7 | import redis |
|
13 | 12 | _AsyncRESPBase, |
14 | 13 | ) |
15 | 14 | from redis.asyncio import Redis |
16 | | -from redis.asyncio.connection import ( |
17 | | - AbstractConnection, |
18 | | - Connection, |
19 | | - UnixDomainSocketConnection, |
20 | | - parse_url, |
21 | | -) |
| 15 | +from redis.asyncio.connection import Connection, UnixDomainSocketConnection, parse_url |
22 | 16 | from redis.asyncio.retry import Retry |
23 | 17 | from redis.backoff import NoBackoff |
24 | 18 | from redis.exceptions import ConnectionError, InvalidResponse, TimeoutError |
@@ -320,32 +314,3 @@ async def get_redis_connection(): |
320 | 314 | assert r1.auto_close_connection_pool is False |
321 | 315 | await r1.connection_pool.disconnect() |
322 | 316 | await r1.close() |
323 | | - |
324 | | - |
325 | | -@pytest.mark.onlynoncluster |
326 | | -@pytest.mark.parametrize("from_url", (True, False)) |
327 | | -async def test_connection_socket_cleanup(request, from_url): |
328 | | - """Verify that connections are cleaned up when they |
329 | | - are garbage collected |
330 | | - """ |
331 | | - if platform.python_implementation() != "CPython": |
332 | | - pytest.skip("only works on CPython") |
333 | | - url: str = request.config.getoption("--redis-url") |
334 | | - url_args = parse_url(url) |
335 | | - |
336 | | - async def get_redis_connection(): |
337 | | - if from_url: |
338 | | - return Redis.from_url(url) |
339 | | - return Redis(**url_args) |
340 | | - |
341 | | - async def do_something(redis): |
342 | | - await redis.incr("counter") |
343 | | - await redis.close() |
344 | | - |
345 | | - mock = Mock() |
346 | | - with patch.object(AbstractConnection, "_close_socket", mock): |
347 | | - r1 = await get_redis_connection() |
348 | | - await do_something(r1) |
349 | | - r1 = None |
350 | | - |
351 | | - assert mock.call_count == 1 |
0 commit comments