projects
/
arvados.git
/ blobdiff
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
20710: Switch from pipes.quote to shlex.quote
[arvados.git]
/
sdk
/
python
/
tests
/
test_retry.py
diff --git
a/sdk/python/tests/test_retry.py
b/sdk/python/tests/test_retry.py
index 0c1110c5ceb10e5164d48db9c03bd2e74f8b9639..bcf784d13003a1de826e87d10f04d0a2f4a8d7d5 100644
(file)
--- a/
sdk/python/tests/test_retry.py
+++ b/
sdk/python/tests/test_retry.py
@@
-1,5
+1,10
@@
-#!/usr/bin/env python
+# Copyright (C) The Arvados Authors. All rights reserved.
+#
+# SPDX-License-Identifier: Apache-2.0
+from builtins import zip
+from builtins import range
+from builtins import object
import itertools
import unittest
import itertools
import unittest
@@
-7,8
+12,6
@@
import arvados.errors as arv_error
import arvados.retry as arv_retry
import mock
import arvados.retry as arv_retry
import mock
-from arvados_testutil import fake_requests_response
-
class RetryLoopTestMixin(object):
@staticmethod
def loop_success(result):
class RetryLoopTestMixin(object):
@staticmethod
def loop_success(result):
@@
-27,7
+30,7
@@
class RetryLoopTestMixin(object):
responses = itertools.chain(results, itertools.repeat(None))
retrier = arv_retry.RetryLoop(num_retries, self.loop_success,
**kwargs)
responses = itertools.chain(results, itertools.repeat(None))
retrier = arv_retry.RetryLoop(num_retries, self.loop_success,
**kwargs)
- for tries_left, response in
itertools.i
zip(retrier, responses):
+ for tries_left, response in zip(retrier, responses):
retrier.save_result(response)
return retrier
retrier.save_result(response)
return retrier
@@
-143,15
+146,14
@@
class RetryLoopBackoffTestCase(unittest.TestCase, RetryLoopTestMixin):
def test_backoff_multiplier(self, sleep_mock, time_mock):
self.run_loop(5, 500, 501, 502, 503, 504, 505,
def test_backoff_multiplier(self, sleep_mock, time_mock):
self.run_loop(5, 500, 501, 502, 503, 504, 505,
- backoff_start=5, backoff_growth=10)
+ backoff_start=5, backoff_growth=10
, max_wait=1000000000
)
self.check_backoff(sleep_mock, 5, 9)
class CheckHTTPResponseSuccessTestCase(unittest.TestCase):
def results_map(self, *codes):
for code in codes:
self.check_backoff(sleep_mock, 5, 9)
class CheckHTTPResponseSuccessTestCase(unittest.TestCase):
def results_map(self, *codes):
for code in codes:
- response = fake_requests_response(code, None)
- yield code, arv_retry.check_http_response_success(response)
+ yield code, arv_retry.check_http_response_success(code)
def check(assert_name):
def check_method(self, expected, *codes):
def check(assert_name):
def check_method(self, expected, *codes):
@@
-169,26
+171,26
@@
class CheckHTTPResponseSuccessTestCase(unittest.TestCase):
check_is_not = check('assertIsNot')
def test_obvious_successes(self):
check_is_not = check('assertIsNot')
def test_obvious_successes(self):
- self.check_is(True, *
range(200, 207
))
+ self.check_is(True, *
list(range(200, 207)
))
def test_obvious_stops(self):
def test_obvious_stops(self):
- self.check_is(False, 424, 426, 428, 431,
- *
range(400, 408) + range(410, 420
))
+ self.check_is(False, 42
2, 42
4, 426, 428, 431,
+ *
list(range(400, 408)) + list(range(410, 420)
))
def test_obvious_retries(self):
self.check_is(None, 500, 502, 503, 504)
def test_4xx_retries(self):
def test_obvious_retries(self):
self.check_is(None, 500, 502, 503, 504)
def test_4xx_retries(self):
- self.check_is(None, 408, 409, 42
2, 42
3)
+ self.check_is(None, 408, 409, 423)
def test_5xx_failures(self):
def test_5xx_failures(self):
- self.check_is(False, 501, *
range(505, 512
))
+ self.check_is(False, 501, *
list(range(505, 512)
))
def test_1xx_not_retried(self):
self.check_is_not(None, 100, 101)
def test_redirects_not_retried(self):
def test_1xx_not_retried(self):
self.check_is_not(None, 100, 101)
def test_redirects_not_retried(self):
- self.check_is_not(None, *
range(300, 309
))
+ self.check_is_not(None, *
list(range(300, 309)
))
def test_wacky_code_retries(self):
self.check_is(None, 0, 99, 600, -200)
def test_wacky_code_retries(self):
self.check_is(None, 0, 99, 600, -200)
@@
-204,8
+206,10
@@
class RetryMethodTestCase(unittest.TestCase):
return (a, num_retries, z)
return (a, num_retries, z)
- def test_positional_arg_passed(self):
- self.assertEqual((3, 2, 0), self.Tester().check(3, 2))
+ def test_positional_arg_raises(self):
+ # unsupported use -- make sure we raise rather than ignore
+ with self.assertRaises(TypeError):
+ self.assertEqual((3, 2, 0), self.Tester().check(3, 2))
def test_keyword_arg_passed(self):
self.assertEqual((4, 3, 0), self.Tester().check(num_retries=3, a=4))
def test_keyword_arg_passed(self):
self.assertEqual((4, 3, 0), self.Tester().check(num_retries=3, a=4))