Skip to content
Snippets Groups Projects
Commit 9b63a06b authored by Ned Batchelder's avatar Ned Batchelder
Browse files

Properly clean up a wrapped function

parent 52e72c63
No related merge requests found
...@@ -25,7 +25,7 @@ def counter(fn): ...@@ -25,7 +25,7 @@ def counter(fn):
""" """
def _counted(*largs, **kargs): def _counted(*largs, **kargs):
_counted.invocations += 1 _counted.invocations += 1
fn(*largs, **kargs) return fn(*largs, **kargs)
_counted.invocations = 0 _counted.invocations = 0
return _counted return _counted
...@@ -90,8 +90,11 @@ class EdxClearExpiredTokensTests(TestCase): ...@@ -90,8 +90,11 @@ class EdxClearExpiredTokensTests(TestCase):
AccessToken.objects.filter(refresh_token__isnull=True, expires__lt=now).count(), AccessToken.objects.filter(refresh_token__isnull=True, expires__lt=now).count(),
initial_count initial_count
) )
original_delete = QuerySet.delete
QuerySet.delete = counter(QuerySet.delete) QuerySet.delete = counter(QuerySet.delete)
try:
call_command('edx_clear_expired_tokens', batch_size=1, sleep_time=0) call_command('edx_clear_expired_tokens', batch_size=1, sleep_time=0)
self.assertEqual(QuerySet.delete.invocations, initial_count) self.assertEqual(QuerySet.delete.invocations, initial_count)
self.assertEqual(AccessToken.objects.filter(refresh_token__isnull=True, expires__lt=now).count(), 0) self.assertEqual(AccessToken.objects.filter(refresh_token__isnull=True, expires__lt=now).count(), 0)
finally:
QuerySet.delete = original_delete
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment