mirror of
https://github.com/encode/django-rest-framework.git
synced 2025-08-05 13:00:12 +03:00
Add test for UserRateThrottle
This commit is contained in:
parent
8b30218d15
commit
ca085d2aed
|
@ -424,11 +424,13 @@ class AnonRateThrottleTests(TestCase):
|
|||
def setUp(self):
|
||||
self.throttle = AnonRateThrottle()
|
||||
|
||||
def tearDown(self):
|
||||
User.objects.all().delete()
|
||||
|
||||
def test_authenticated_user_not_affected(self):
|
||||
request = Request(HttpRequest())
|
||||
user = User.objects.create(username='test')
|
||||
|
||||
force_authenticate(request, user, token='test_token')
|
||||
force_authenticate(request, user)
|
||||
request.user = user
|
||||
assert self.throttle.get_cache_key(request, view={}) is None
|
||||
|
||||
|
@ -436,3 +438,20 @@ class AnonRateThrottleTests(TestCase):
|
|||
request = Request(HttpRequest())
|
||||
cache_key = self.throttle.get_cache_key(request, view={})
|
||||
assert cache_key == 'throttle_anon_None'
|
||||
|
||||
|
||||
class UserRateThrottleTests(TestCase):
|
||||
|
||||
def setUp(self):
|
||||
self.throttle = UserRateThrottle()
|
||||
|
||||
def tearDown(self):
|
||||
User.objects.all().delete()
|
||||
|
||||
def test_get_cache_key_returns_correct_key_if_user_is_authenticated(self):
|
||||
request = Request(HttpRequest())
|
||||
user = User.objects.create(username='test')
|
||||
force_authenticate(request, user)
|
||||
request.user = user
|
||||
cache_key = self.throttle.get_cache_key(request, view={})
|
||||
assert cache_key == 'throttle_user_2' # user_1 is AnonymousUser
|
||||
|
|
Loading…
Reference in New Issue
Block a user