summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordvora-h <67596500+dvora-h@users.noreply.github.com>2022-06-27 15:05:05 +0300
committerGitHub <noreply@github.com>2022-06-27 15:05:05 +0300
commite85fe3b8e39de4d568a11f146162a4f7d944130c (patch)
tree949e7bd90fb83af541f89d8a8c54f7dbf7b49c46
parente5df832640fa581293c57c4d613406b9f2c40238 (diff)
downloadredis-py-e85fe3b8e39de4d568a11f146162a4f7d944130c.tar.gz
Fix `XAUTOCLAIM` to return the full response (#2252)
* fix parse_xautoclaim * linters
-rwxr-xr-xredis/client.py3
-rw-r--r--tests/test_commands.py4
2 files changed, 4 insertions, 3 deletions
diff --git a/redis/client.py b/redis/client.py
index 86061d5..c63fb13 100755
--- a/redis/client.py
+++ b/redis/client.py
@@ -310,7 +310,8 @@ def parse_xclaim(response, **options):
def parse_xautoclaim(response, **options):
if options.get("parse_justid", False):
return response[1]
- return parse_stream_list(response[1])
+ response[1] = parse_stream_list(response[1])
+ return response
def parse_xinfo_stream(response, **options):
diff --git a/tests/test_commands.py b/tests/test_commands.py
index fcd2ed1..715d18c 100644
--- a/tests/test_commands.py
+++ b/tests/test_commands.py
@@ -3781,14 +3781,14 @@ class TestRedisCommands:
# trying to claim a message that isn't already pending doesn't
# do anything
response = r.xautoclaim(stream, group, consumer2, min_idle_time=0)
- assert response == []
+ assert response == [b"0-0", []]
# read the group as consumer1 to initially claim the messages
r.xreadgroup(group, consumer1, streams={stream: ">"})
# claim one message as consumer2
response = r.xautoclaim(stream, group, consumer2, min_idle_time=0, count=1)
- assert response == [message]
+ assert response[1] == [message]
# reclaim the messages as consumer1, but use the justid argument
# which only returns message ids