aboutsummaryrefslogtreecommitdiffstats
path: root/djangorestframework/tests/throttling.py
blob: 94d0142884e137c6e102729112a22f9ee4d783f3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
from django.conf.urls.defaults import patterns
from django.test import TestCase
from django.utils import simplejson as json

from djangorestframework.compat import RequestFactory
from djangorestframework.views import BaseView
from djangorestframework.permissions import Throttling


class MockView(BaseView):
    permissions = ( Throttling, )
    throttle = (3, 1) # 3 requests per second

    def get(self, request):
        return 'foo'

urlpatterns = patterns('',
    (r'^$', MockView.as_view()),
)


#class ThrottlingTests(TestCase):
#    """Basic authentication"""
#    urls = 'djangorestframework.tests.throttling'      
#
#    def test_requests_are_throttled(self):
#        """Ensure request rate is limited"""
#        for dummy in range(3):
#            response = self.client.get('/')
#        response = self.client.get('/')
#        
#    def test_request_throttling_is_per_user(self):
#        """Ensure request rate is only limited per user, not globally"""
#        pass
#    
#    def test_request_throttling_expires(self):
#        """Ensure request rate is limited for a limited duration only"""
#        pass