aboutsummaryrefslogtreecommitdiffstats
path: root/rest_framework/tests/views.py
diff options
context:
space:
mode:
authorTom Christie2012-09-20 13:06:27 +0100
committerTom Christie2012-09-20 13:06:27 +0100
commit4b691c402707775c3048a90531024f3bc5be6f91 (patch)
tree3adfc54b0d8b70e4ea78edf7091f7827fa68f47b /rest_framework/tests/views.py
parenta1bcfbfe926621820832e32b0427601e1140b4f7 (diff)
downloaddjango-rest-framework-4b691c402707775c3048a90531024f3bc5be6f91.tar.bz2
Change package name: djangorestframework -> rest_framework
Diffstat (limited to 'rest_framework/tests/views.py')
-rw-r--r--rest_framework/tests/views.py128
1 files changed, 128 insertions, 0 deletions
diff --git a/rest_framework/tests/views.py b/rest_framework/tests/views.py
new file mode 100644
index 00000000..cd1f73c3
--- /dev/null
+++ b/rest_framework/tests/views.py
@@ -0,0 +1,128 @@
+# from django.core.urlresolvers import reverse
+# from django.conf.urls.defaults import patterns, url, include
+# from django.http import HttpResponse
+# from django.test import TestCase
+# from django.utils import simplejson as json
+
+# from rest_framework.views import View
+
+
+# class MockView(View):
+# """This is a basic mock view"""
+# pass
+
+
+# class MockViewFinal(View):
+# """View with final() override"""
+
+# def final(self, request, response, *args, **kwargs):
+# return HttpResponse('{"test": "passed"}', content_type="application/json")
+
+
+# # class ResourceMockView(View):
+# # """This is a resource-based mock view"""
+
+# # class MockForm(forms.Form):
+# # foo = forms.BooleanField(required=False)
+# # bar = forms.IntegerField(help_text='Must be an integer.')
+# # baz = forms.CharField(max_length=32)
+
+# # form = MockForm
+
+
+# # class MockResource(ModelResource):
+# # """This is a mock model-based resource"""
+
+# # class MockResourceModel(models.Model):
+# # foo = models.BooleanField()
+# # bar = models.IntegerField(help_text='Must be an integer.')
+# # baz = models.CharField(max_length=32, help_text='Free text. Max length 32 chars.')
+
+# # model = MockResourceModel
+# # fields = ('foo', 'bar', 'baz')
+
+# urlpatterns = patterns('',
+# url(r'^mock/$', MockView.as_view()),
+# url(r'^mock/final/$', MockViewFinal.as_view()),
+# # url(r'^resourcemock/$', ResourceMockView.as_view()),
+# # url(r'^model/$', ListOrCreateModelView.as_view(resource=MockResource)),
+# # url(r'^model/(?P<pk>[^/]+)/$', InstanceModelView.as_view(resource=MockResource)),
+# url(r'^restframework/', include('rest_framework.urls', namespace='rest_framework')),
+# )
+
+
+# class BaseViewTests(TestCase):
+# """Test the base view class of rest_framework"""
+# urls = 'rest_framework.tests.views'
+
+# def test_view_call_final(self):
+# response = self.client.options('/mock/final/')
+# self.assertEqual(response['Content-Type'].split(';')[0], "application/json")
+# data = json.loads(response.content)
+# self.assertEqual(data['test'], 'passed')
+
+# def test_options_method_simple_view(self):
+# response = self.client.options('/mock/')
+# self._verify_options_response(response,
+# name='Mock',
+# description='This is a basic mock view')
+
+# def test_options_method_resource_view(self):
+# response = self.client.options('/resourcemock/')
+# self._verify_options_response(response,
+# name='Resource Mock',
+# description='This is a resource-based mock view',
+# fields={'foo': 'BooleanField',
+# 'bar': 'IntegerField',
+# 'baz': 'CharField',
+# })
+
+# def test_options_method_model_resource_list_view(self):
+# response = self.client.options('/model/')
+# self._verify_options_response(response,
+# name='Mock List',
+# description='This is a mock model-based resource',
+# fields={'foo': 'BooleanField',
+# 'bar': 'IntegerField',
+# 'baz': 'CharField',
+# })
+
+# def test_options_method_model_resource_detail_view(self):
+# response = self.client.options('/model/0/')
+# self._verify_options_response(response,
+# name='Mock Instance',
+# description='This is a mock model-based resource',
+# fields={'foo': 'BooleanField',
+# 'bar': 'IntegerField',
+# 'baz': 'CharField',
+# })
+
+# def _verify_options_response(self, response, name, description, fields=None, status=200,
+# mime_type='application/json'):
+# self.assertEqual(response.status_code, status)
+# self.assertEqual(response['Content-Type'].split(';')[0], mime_type)
+# data = json.loads(response.content)
+# self.assertTrue('application/json' in data['renders'])
+# self.assertEqual(name, data['name'])
+# self.assertEqual(description, data['description'])
+# if fields is None:
+# self.assertFalse(hasattr(data, 'fields'))
+# else:
+# self.assertEqual(data['fields'], fields)
+
+
+# class ExtraViewsTests(TestCase):
+# """Test the extra views rest_framework provides"""
+# urls = 'rest_framework.tests.views'
+
+# def test_login_view(self):
+# """Ensure the login view exists"""
+# response = self.client.get(reverse('rest_framework:login'))
+# self.assertEqual(response.status_code, 200)
+# self.assertEqual(response['Content-Type'].split(';')[0], 'text/html')
+
+# def test_logout_view(self):
+# """Ensure the logout view exists"""
+# response = self.client.get(reverse('rest_framework:logout'))
+# self.assertEqual(response.status_code, 200)
+# self.assertEqual(response['Content-Type'].split(';')[0], 'text/html')