aboutsummaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorQuentin Sommer <quentin-sommer@users.noreply.github.com>2021-03-31 18:52:02 +0200
committerGitHub <noreply@github.com>2021-03-31 16:52:02 +0000
commit1647f07c7ddb0ad7ca5cb476d85962a513aef660 (patch)
tree771761be3c68e7e78b652c85f75f1daba2b6bff0 /tests
parenta5b175ffb5123e103a057cf46bac7aa726f8fc80 (diff)
downloadpython-api-core-1647f07c7ddb0ad7ca5cb476d85962a513aef660.tar.gz
Fix retry.with_delay multiplier parameter handling (#164)
Issue: https://github.com/googleapis/python-api-core/issues/163
Diffstat (limited to 'tests')
-rw-r--r--tests/unit/test_retry.py36
1 files changed, 34 insertions, 2 deletions
diff --git a/tests/unit/test_retry.py b/tests/unit/test_retry.py
index a0160e9..4c2e457 100644
--- a/tests/unit/test_retry.py
+++ b/tests/unit/test_retry.py
@@ -246,12 +246,44 @@ class TestRetry(object):
deadline=4,
on_error=mock.sentinel.on_error,
)
- new_retry = retry_.with_delay(initial=1, maximum=2, multiplier=3)
+ new_retry = retry_.with_delay(initial=5, maximum=6, multiplier=7)
assert retry_ is not new_retry
- assert new_retry._initial == 1
+ assert new_retry._initial == 5
+ assert new_retry._maximum == 6
+ assert new_retry._multiplier == 7
+
+ # the rest of the attributes should remain the same
+ assert new_retry._deadline == retry_._deadline
+ assert new_retry._predicate is retry_._predicate
+ assert new_retry._on_error is retry_._on_error
+
+ def test_with_delay_partial_options(self):
+ retry_ = retry.Retry(
+ predicate=mock.sentinel.predicate,
+ initial=1,
+ maximum=2,
+ multiplier=3,
+ deadline=4,
+ on_error=mock.sentinel.on_error,
+ )
+ new_retry = retry_.with_delay(initial=4)
+ assert retry_ is not new_retry
+ assert new_retry._initial == 4
assert new_retry._maximum == 2
assert new_retry._multiplier == 3
+ new_retry = retry_.with_delay(maximum=4)
+ assert retry_ is not new_retry
+ assert new_retry._initial == 1
+ assert new_retry._maximum == 4
+ assert new_retry._multiplier == 3
+
+ new_retry = retry_.with_delay(multiplier=4)
+ assert retry_ is not new_retry
+ assert new_retry._initial == 1
+ assert new_retry._maximum == 2
+ assert new_retry._multiplier == 4
+
# the rest of the attributes should remain the same
assert new_retry._deadline == retry_._deadline
assert new_retry._predicate is retry_._predicate