summaryrefslogtreecommitdiff
path: root/oslo_db/tests/old_import_api/test_api.py
diff options
context:
space:
mode:
Diffstat (limited to 'oslo_db/tests/old_import_api/test_api.py')
-rw-r--r--oslo_db/tests/old_import_api/test_api.py21
1 files changed, 21 insertions, 0 deletions
diff --git a/oslo_db/tests/old_import_api/test_api.py b/oslo_db/tests/old_import_api/test_api.py
index 3664e24..1fe3bf3 100644
--- a/oslo_db/tests/old_import_api/test_api.py
+++ b/oslo_db/tests/old_import_api/test_api.py
@@ -279,3 +279,24 @@ class DBDeadlockTestCase(DBAPITestCase):
self.assertEqual(
0, self.test_db_api.error_counter,
'Counter not decremented, retry logic probably failed.')
+
+
+class DBRetryRequestCase(DBAPITestCase):
+ def test_retry_wrapper_succeeds(self):
+ @api.wrap_db_retry(max_retries=10, retry_on_request=True)
+ def some_method():
+ pass
+
+ some_method()
+
+ def test_retry_wrapper_reaches_limit(self):
+ max_retries = 10
+
+ @api.wrap_db_retry(max_retries=10, retry_on_request=True)
+ def some_method(res):
+ res['result'] += 1
+ raise exception.RetryRequest(ValueError())
+
+ res = {'result': 0}
+ self.assertRaises(ValueError, some_method, res)
+ self.assertEqual(max_retries + 1, res['result'])