summaryrefslogtreecommitdiff
path: root/tests/test_retry.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/test_retry.py')
-rw-r--r--tests/test_retry.py16
1 files changed, 15 insertions, 1 deletions
diff --git a/tests/test_retry.py b/tests/test_retry.py
index f844fd0..3cfea5c 100644
--- a/tests/test_retry.py
+++ b/tests/test_retry.py
@@ -2,7 +2,7 @@ from unittest.mock import patch
import pytest
-from redis.backoff import NoBackoff
+from redis.backoff import ExponentialBackoff, NoBackoff
from redis.client import Redis
from redis.connection import Connection, UnixDomainSocketConnection
from redis.exceptions import (
@@ -203,3 +203,17 @@ class TestRedisClientRetry:
r.get("foo")
finally:
assert parse_response.call_count == retries + 1
+
+ def test_get_set_retry_object(self, request):
+ retry = Retry(NoBackoff(), 2)
+ r = _get_client(Redis, request, retry_on_timeout=True, retry=retry)
+ exist_conn = r.connection_pool.get_connection("_")
+ assert r.get_retry()._retries == retry._retries
+ assert isinstance(r.get_retry()._backoff, NoBackoff)
+ new_retry_policy = Retry(ExponentialBackoff(), 3)
+ r.set_retry(new_retry_policy)
+ assert r.get_retry()._retries == new_retry_policy._retries
+ assert isinstance(r.get_retry()._backoff, ExponentialBackoff)
+ assert exist_conn.retry._retries == new_retry_policy._retries
+ new_conn = r.connection_pool.get_connection("_")
+ assert new_conn.retry._retries == new_retry_policy._retries