diff options
author | Quentin Sommer <quentin-sommer@users.noreply.github.com> | 2021-03-31 18:52:02 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-03-31 16:52:02 +0000 |
commit | 1647f07c7ddb0ad7ca5cb476d85962a513aef660 (patch) | |
tree | 771761be3c68e7e78b652c85f75f1daba2b6bff0 /tests | |
parent | a5b175ffb5123e103a057cf46bac7aa726f8fc80 (diff) | |
download | python-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.py | 36 |
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 |