Skip to content

Commit 6968431

Browse files
authored
Fix redis 7.2.0 tests (#2902)
* Fix redis 7.2.0 tests * revert * revert geo * fix cluster myshardid * linters
1 parent 28cc65c commit 6968431

File tree

3 files changed

+23
-40
lines changed

3 files changed

+23
-40
lines changed

redis/cluster.py

+1
Original file line numberDiff line numberDiff line change
@@ -267,6 +267,7 @@ class AbstractRedisCluster:
267267
"READONLY",
268268
"CLUSTER INFO",
269269
"CLUSTER MEET",
270+
"CLUSTER MYSHARDID",
270271
"CLUSTER NODES",
271272
"CLUSTER REPLICAS",
272273
"CLUSTER RESET",

tests/test_asyncio/test_commands.py

+12-20
Original file line numberDiff line numberDiff line change
@@ -489,20 +489,6 @@ async def test_client_no_touch(self, r: redis.Redis):
489489
with pytest.raises(TypeError):
490490
await r.client_no_touch()
491491

492-
@skip_if_server_version_lt("7.2.0")
493-
@pytest.mark.onlycluster
494-
async def test_waitaof(self, r):
495-
# must return a list of 2 elements
496-
assert len(await r.waitaof(0, 0, 0)) == 2
497-
assert len(await r.waitaof(1, 0, 0)) == 2
498-
assert len(await r.waitaof(1, 0, 1000)) == 2
499-
500-
# value is out of range, value must between 0 and 1
501-
with pytest.raises(exceptions.ResponseError):
502-
await r.waitaof(2, 0, 0)
503-
with pytest.raises(exceptions.ResponseError):
504-
await r.waitaof(-1, 0, 0)
505-
506492
async def test_config_get(self, r: redis.Redis):
507493
data = await r.config_get()
508494
assert "maxmemory" in data
@@ -1821,9 +1807,11 @@ async def test_zrank(self, r: redis.Redis):
18211807
async def test_zrank_withscore(self, r: redis.Redis):
18221808
await r.zadd("a", {"a1": 1, "a2": 2, "a3": 3, "a4": 4, "a5": 5})
18231809
assert await r.zrank("a", "a1") == 0
1824-
assert await r.rank("a", "a2") == 1
1810+
assert await r.zrank("a", "a2") == 1
18251811
assert await r.zrank("a", "a6") is None
1826-
assert await r.zrank("a", "a3", withscore=True) == [2, "3"]
1812+
assert_resp_response(
1813+
r, await r.zrank("a", "a3", withscore=True), [2, b"3"], [2, 3.0]
1814+
)
18271815
assert await r.zrank("a", "a6", withscore=True) is None
18281816

18291817
async def test_zrem(self, r: redis.Redis):
@@ -1920,7 +1908,9 @@ async def test_zrevrank_withscore(self, r: redis.Redis):
19201908
assert await r.zrevrank("a", "a1") == 4
19211909
assert await r.zrevrank("a", "a2") == 3
19221910
assert await r.zrevrank("a", "a6") is None
1923-
assert await r.zrevrank("a", "a3", withscore=True) == [2, "3"]
1911+
assert_resp_response(
1912+
r, await r.zrevrank("a", "a3", withscore=True), [2, b"3"], [2, 3.0]
1913+
)
19241914
assert await r.zrevrank("a", "a6", withscore=True) is None
19251915

19261916
async def test_zscore(self, r: redis.Redis):
@@ -2877,13 +2867,15 @@ async def test_xinfo_consumers(self, r: redis.Redis):
28772867
info = await r.xinfo_consumers(stream, group)
28782868
assert len(info) == 2
28792869
expected = [
2880-
{"name": consumer1.encode(), "pending": 1, "inactive": 2},
2881-
{"name": consumer2.encode(), "pending": 2, "inactive": 2},
2870+
{"name": consumer1.encode(), "pending": 1},
2871+
{"name": consumer2.encode(), "pending": 2},
28822872
]
28832873

2884-
# we can't determine the idle time, so just make sure it's an int
2874+
# we can't determine the idle and inactive time, so just make sure it's an int
28852875
assert isinstance(info[0].pop("idle"), int)
28862876
assert isinstance(info[1].pop("idle"), int)
2877+
assert isinstance(info[0].pop("inactive"), int)
2878+
assert isinstance(info[1].pop("inactive"), int)
28872879
assert info == expected
28882880

28892881
@skip_if_server_version_lt("5.0.0")

tests/test_commands.py

+10-20
Original file line numberDiff line numberDiff line change
@@ -745,20 +745,6 @@ def test_client_no_touch(self, r):
745745
with pytest.raises(TypeError):
746746
r.client_no_touch()
747747

748-
@pytest.mark.onlycluster
749-
@skip_if_server_version_lt("7.2.0")
750-
def test_waitaof(self, r):
751-
# must return a list of 2 elements
752-
assert len(r.waitaof(0, 0, 0)) == 2
753-
assert len(r.waitaof(1, 0, 0)) == 2
754-
assert len(r.waitaof(1, 0, 1000)) == 2
755-
756-
# value is out of range, value must between 0 and 1
757-
with pytest.raises(exceptions.ResponseError):
758-
r.waitaof(2, 0, 0)
759-
with pytest.raises(exceptions.ResponseError):
760-
r.waitaof(-1, 0, 0)
761-
762748
@pytest.mark.onlynoncluster
763749
@skip_if_server_version_lt("3.2.0")
764750
def test_client_reply(self, r, r_timeout):
@@ -2854,9 +2840,9 @@ def test_zrank(self, r):
28542840
def test_zrank_withscore(self, r: redis.Redis):
28552841
r.zadd("a", {"a1": 1, "a2": 2, "a3": 3, "a4": 4, "a5": 5})
28562842
assert r.zrank("a", "a1") == 0
2857-
assert r.rank("a", "a2") == 1
2843+
assert r.zrank("a", "a2") == 1
28582844
assert r.zrank("a", "a6") is None
2859-
assert r.zrank("a", "a3", withscore=True) == [2, "3"]
2845+
assert_resp_response(r, r.zrank("a", "a3", withscore=True), [2, b"3"], [2, 3.0])
28602846
assert r.zrank("a", "a6", withscore=True) is None
28612847

28622848
def test_zrem(self, r):
@@ -2951,7 +2937,9 @@ def test_zrevrank_withscore(self, r):
29512937
assert r.zrevrank("a", "a1") == 4
29522938
assert r.zrevrank("a", "a2") == 3
29532939
assert r.zrevrank("a", "a6") is None
2954-
assert r.zrevrank("a", "a3", withscore=True) == [2, "3"]
2940+
assert_resp_response(
2941+
r, r.zrevrank("a", "a3", withscore=True), [2, b"3"], [2, 3.0]
2942+
)
29552943
assert r.zrevrank("a", "a6", withscore=True) is None
29562944

29572945
def test_zscore(self, r):
@@ -4404,13 +4392,15 @@ def test_xinfo_consumers(self, r):
44044392
info = r.xinfo_consumers(stream, group)
44054393
assert len(info) == 2
44064394
expected = [
4407-
{"name": consumer1.encode(), "pending": 1, "inactive": 2},
4408-
{"name": consumer2.encode(), "pending": 2, "inactive": 2},
4395+
{"name": consumer1.encode(), "pending": 1},
4396+
{"name": consumer2.encode(), "pending": 2},
44094397
]
44104398

4411-
# we can't determine the idle time, so just make sure it's an int
4399+
# we can't determine the idle and inactive time, so just make sure it's an int
44124400
assert isinstance(info[0].pop("idle"), int)
44134401
assert isinstance(info[1].pop("idle"), int)
4402+
assert isinstance(info[0].pop("inactive"), int)
4403+
assert isinstance(info[1].pop("inactive"), int)
44144404
assert info == expected
44154405

44164406
@skip_if_server_version_lt("7.0.0")

0 commit comments

Comments
 (0)