MCPcopy Index your code
hub / github.com/PyGithub/PyGithub / Retry

Class Retry

tests/Retry.py:45–91  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

43
44
45class Retry(Framework.TestCase):
46 def setUp(self):
47 # status codes returned on random github server errors
48 status_forcelist = (500, 502, 504)
49 retry = urllib3.Retry(total=3, read=3, connect=3, status_forcelist=status_forcelist)
50 self.setRetry(retry)
51 super().setUp()
52
53 def testShouldNotRetryWhenStatusNotOnList(self):
54 with self.assertRaises(github.GithubException):
55 self.g.get_repo(REPO_NAME)
56 self.assertEqual(len(responses.calls), 1)
57
58 def testReturnsRepoAfter3Retries(self):
59 repository = self.g.get_repo(REPO_NAME)
60 self.assertEqual(len(responses.calls), 4)
61 for call in responses.calls:
62 self.assertEqual(call.request.path_url, "/repos/" + REPO_NAME)
63
64 self.assertIsInstance(repository, github.Repository.Repository)
65 self.assertEqual(repository.full_name, REPO_NAME)
66
67 def testReturnsRepoAfter1Retry(self):
68 repository = self.g.get_repo(REPO_NAME)
69 self.assertEqual(len(responses.calls), 2)
70 for call in responses.calls:
71 self.assertEqual(call.request.path_url, "/repos/" + REPO_NAME)
72
73 self.assertIsInstance(repository, github.Repository.Repository)
74 self.assertEqual(repository.full_name, REPO_NAME)
75
76 def testRaisesRetryErrorAfterMaxRetries(self):
77 with self.assertRaises(requests.exceptions.RetryError):
78 self.g.get_repo("PyGithub/PyGithub")
79 self.assertEqual(len(responses.calls), 4)
80 for call in responses.calls:
81 self.assertEqual(call.request.path_url, "/repos/PyGithub/PyGithub")
82
83 def testReturnsRepoAfterSettingRetryHttp(self):
84 g = github.Github(
85 auth=self.oauth_token,
86 base_url="http://my.enterprise.com",
87 retry=0,
88 ) # http here
89 repository = g.get_repo(REPO_NAME)
90 self.assertIsInstance(repository, github.Repository.Repository)
91 self.assertEqual(repository.full_name, REPO_NAME)

Callers 1

Calls

no outgoing calls

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…