Wrap test in try/finally, cleanup duration determination

This commit is contained in:
Christopher Grebs 2019-07-30 09:40:32 +02:00
parent 72fbefd853
commit 957b39fa8d
No known key found for this signature in database
GPG Key ID: D7BCDE311BFC58DD
2 changed files with 11 additions and 12 deletions

View File

@ -363,10 +363,8 @@ class APIView(View):
if duration is not None if duration is not None
] ]
if durations: duration = max(durations) if durations else None
self.throttled(request, max(durations)) self.throttled(request, duration)
else:
self.throttled(request, None)
def determine_version(self, request, *args, **kwargs): def determine_version(self, request, *args, **kwargs):
""" """

View File

@ -168,6 +168,7 @@ class ThrottlingTests(TestCase):
assert int(response['retry-after']) == 60 assert int(response['retry-after']) == 60
previous_rate = User3SecRateThrottle.rate previous_rate = User3SecRateThrottle.rate
try:
User3SecRateThrottle.rate = '1/sec' User3SecRateThrottle.rate = '1/sec'
for dummy in range(24): for dummy in range(24):
@ -175,7 +176,7 @@ class ThrottlingTests(TestCase):
assert response.status_code == 429 assert response.status_code == 429
assert int(response['retry-after']) == 60 assert int(response['retry-after']) == 60
finally:
# reset # reset
User3SecRateThrottle.rate = previous_rate User3SecRateThrottle.rate = previous_rate