Skip to content

Commit 4858413

Browse files
committed
Refactor deprecated aioredis-py to redis-py
1 parent 15589a1 commit 4858413

File tree

3 files changed

+22
-25
lines changed

3 files changed

+22
-25
lines changed

template/pyproject.toml.jinja

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ uvicorn = {extras = ["standard"], version = "~0.20.0"}
2323
gunicorn = "~20.1.0"
2424
click = "~8.1.3"
2525
{%- if redis %}
26-
aioredis = "~2.0.1"
26+
redis = "~4.4.0"
2727
{%- endif %}
2828
{%- if aiohttp %}
2929
aiohttp = "~3.8.3"

template/tests/unit/app/utils/{% if redis %}test_redis.py{% endif %}.jinja

Lines changed: 14 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
11
from unittest import mock
22

33
import pytest
4-
from aioredis import Redis
5-
from aioredis.exceptions import RedisError
4+
from redis import asyncio as aioredis
65
from {{package_name}}.app.utils import RedisClient
76
from {{package_name}}.config import redis as redis_conf
87

@@ -18,14 +17,14 @@ mock.MagicMock.__await__ = lambda x: async_magic().__await__()
1817

1918
def test_open_redis_client():
2019
RedisClient.open_redis_client()
21-
assert isinstance(RedisClient.redis_client, Redis)
20+
assert isinstance(RedisClient.redis_client, aioredis.Redis)
2221
RedisClient.redis_client = None
2322

2423
redis_conf.REDIS_USERNAME = "John"
2524
redis_conf.REDIS_PASSWORD = "Secret"
2625
redis_conf.REDIS_USE_SENTINEL = True
2726
RedisClient.open_redis_client()
28-
assert isinstance(RedisClient.redis_client, Redis)
27+
assert isinstance(RedisClient.redis_client, aioredis.Redis)
2928
RedisClient.redis_client = None
3029

3130

@@ -39,7 +38,7 @@ async def test_ping():
3938
@pytest.mark.asyncio
4039
async def test_ping_exception():
4140
RedisClient.redis_client = mock.MagicMock()
42-
RedisClient.redis_client.ping.side_effect = RedisError("Mock error")
41+
RedisClient.redis_client.ping.side_effect = aioredis.RedisError("Mock error")
4342
assert await RedisClient.ping() is False
4443

4544

@@ -53,8 +52,8 @@ async def test_set():
5352
@pytest.mark.asyncio
5453
async def test_set_exception():
5554
RedisClient.redis_client = mock.MagicMock()
56-
RedisClient.redis_client.set.side_effect = RedisError("Mock error")
57-
with pytest.raises(RedisError):
55+
RedisClient.redis_client.set.side_effect = aioredis.RedisError("Mock error")
56+
with pytest.raises(aioredis.RedisError):
5857
await RedisClient.set("key", "value")
5958

6059

@@ -68,8 +67,8 @@ async def test_rpush():
6867
@pytest.mark.asyncio
6968
async def test_rpush_exception():
7069
RedisClient.redis_client = mock.MagicMock()
71-
RedisClient.redis_client.rpush.side_effect = RedisError("Mock error")
72-
with pytest.raises(RedisError):
70+
RedisClient.redis_client.rpush.side_effect = aioredis.RedisError("Mock error")
71+
with pytest.raises(aioredis.RedisError):
7372
await RedisClient.rpush("key", "value")
7473

7574

@@ -83,8 +82,8 @@ async def test_exists():
8382
@pytest.mark.asyncio
8483
async def test_exists_exception():
8584
RedisClient.redis_client = mock.MagicMock()
86-
RedisClient.redis_client.exists.side_effect = RedisError("Mock error")
87-
with pytest.raises(RedisError):
85+
RedisClient.redis_client.exists.side_effect = aioredis.RedisError("Mock error")
86+
with pytest.raises(aioredis.RedisError):
8887
await RedisClient.exists("key")
8988

9089

@@ -98,8 +97,8 @@ async def test_get():
9897
@pytest.mark.asyncio
9998
async def test_get_exception():
10099
RedisClient.redis_client = mock.MagicMock()
101-
RedisClient.redis_client.get.side_effect = RedisError("Mock error")
102-
with pytest.raises(RedisError):
100+
RedisClient.redis_client.get.side_effect = aioredis.RedisError("Mock error")
101+
with pytest.raises(aioredis.RedisError):
103102
await RedisClient.get("key")
104103

105104

@@ -113,6 +112,6 @@ async def test_lrange():
113112
@pytest.mark.asyncio
114113
async def test_lrange_exception():
115114
RedisClient.redis_client = mock.MagicMock()
116-
RedisClient.redis_client.lrange.side_effect = RedisError("Mock error")
117-
with pytest.raises(RedisError):
115+
RedisClient.redis_client.lrange.side_effect = aioredis.RedisError("Mock error")
116+
with pytest.raises(aioredis.RedisError):
118117
await RedisClient.lrange("key", 1, -1)

template/{{package_name}}/app/utils/{% if redis %}redis.py{% endif %}.jinja

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,7 @@
11
"""Redis client class utility."""
22
import logging
33

4-
import aioredis
5-
import aioredis.sentinel
6-
from aioredis.exceptions import RedisError
4+
from redis import asyncio as aioredis
75
from {{package_name}}.config import redis as redis_conf
86

97

@@ -88,7 +86,7 @@ class RedisClient(object):
8886
cls.log.debug("Execute Redis PING command")
8987
try:
9088
return await redis_client.ping()
91-
except RedisError as ex:
89+
except aioredis.RedisError as ex:
9290
cls.log.exception(
9391
"Redis PING command finished with exception",
9492
exc_info=(type(ex), ex, ex.__traceback__),
@@ -119,7 +117,7 @@ class RedisClient(object):
119117
cls.log.debug(f"Execute Redis SET command, key: {key}, value: {value}")
120118
try:
121119
await redis_client.set(key, value)
122-
except RedisError as ex:
120+
except aioredis.RedisError as ex:
123121
cls.log.exception(
124122
"Redis SET command finished with exception",
125123
exc_info=(type(ex), ex, ex.__traceback__),
@@ -153,7 +151,7 @@ class RedisClient(object):
153151
)
154152
try:
155153
await redis_client.rpush(key, value)
156-
except RedisError as ex:
154+
except aioredis.RedisError as ex:
157155
cls.log.exception(
158156
"Redis RPUSH command finished with exception",
159157
exc_info=(type(ex), ex, ex.__traceback__),
@@ -181,7 +179,7 @@ class RedisClient(object):
181179
cls.log.debug(f"Execute Redis EXISTS command, key: {key}")
182180
try:
183181
return await redis_client.exists(key)
184-
except RedisError as ex:
182+
except aioredis.RedisError as ex:
185183
cls.log.exception(
186184
"Redis EXISTS command finished with exception",
187185
exc_info=(type(ex), ex, ex.__traceback__),
@@ -211,7 +209,7 @@ class RedisClient(object):
211209
cls.log.debug(f"Execute Redis GET command, key: {key}")
212210
try:
213211
return await redis_client.get(key)
214-
except RedisError as ex:
212+
except aioredis.RedisError as ex:
215213
cls.log.exception(
216214
"Redis GET command finished with exception",
217215
exc_info=(type(ex), ex, ex.__traceback__),
@@ -248,7 +246,7 @@ class RedisClient(object):
248246
)
249247
try:
250248
return await redis_client.lrange(key, start, end)
251-
except RedisError as ex:
249+
except aioredis.RedisError as ex:
252250
cls.log.exception(
253251
"Redis LRANGE command finished with exception",
254252
exc_info=(type(ex), ex, ex.__traceback__),

0 commit comments

Comments
 (0)