diff --git a/redis/client.py b/redis/client.py index 86061d56d5..c63fb13326 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 fcd2ed1c0c..715d18c951 100644 --- a/tests/test_commands.py +++ b/tests/test_commands.py @@ -3781,14 +3781,14 @@ def test_xautoclaim(self, r): # 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