From 1cde31c86d9423e9b7a7409c2ef2ba7c0500e47f Mon Sep 17 00:00:00 2001 From: Tom Christie Date: Sat, 25 Feb 2012 18:45:17 +0000 Subject: Massive merge --- djangorestframework/tests/views.py | 54 ++++++++++++++++++-------------------- 1 file changed, 26 insertions(+), 28 deletions(-) (limited to 'djangorestframework/tests/views.py') diff --git a/djangorestframework/tests/views.py b/djangorestframework/tests/views.py index d4189087..00bce002 100644 --- a/djangorestframework/tests/views.py +++ b/djangorestframework/tests/views.py @@ -1,16 +1,17 @@ -from django.conf.urls.defaults import patterns, url +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.test import Client from django import forms from django.db import models +from django.utils import simplejson as json -from djangorestframework.views import View -from djangorestframework.parsers import JSONParser from djangorestframework.resources import ModelResource -from djangorestframework.views import ListOrCreateModelView, InstanceModelView - -from StringIO import StringIO +from djangorestframework.views import ( + View, + ListOrCreateModelView, + InstanceModelView +) class MockView(View): @@ -24,6 +25,7 @@ class MockViewFinal(View): 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""" @@ -34,6 +36,7 @@ class ResourceMockView(View): form = MockForm + class MockResource(ModelResource): """This is a mock model-based resource""" @@ -45,16 +48,16 @@ class MockResource(ModelResource): model = MockResourceModel fields = ('foo', 'bar', 'baz') -urlpatterns = patterns('djangorestframework.utils.staticviews', - url(r'^accounts/login$', 'api_login'), - url(r'^accounts/logout$', 'api_logout'), +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[^/]+)/$', InstanceModelView.as_view(resource=MockResource)), + url(r'^restframework/', include('djangorestframework.urls', namespace='djangorestframework')), ) + class BaseViewTests(TestCase): """Test the base view class of djangorestframework""" urls = 'djangorestframework.tests.views' @@ -62,8 +65,7 @@ class BaseViewTests(TestCase): def test_view_call_final(self): response = self.client.options('/mock/final/') self.assertEqual(response['Content-Type'].split(';')[0], "application/json") - parser = JSONParser(None) - (data, files) = parser.parse(StringIO(response.content)) + data = json.loads(response.content) self.assertEqual(data['test'], 'passed') def test_options_method_simple_view(self): @@ -77,9 +79,9 @@ class BaseViewTests(TestCase): self._verify_options_response(response, name='Resource Mock', description='This is a resource-based mock view', - fields={'foo':'BooleanField', - 'bar':'IntegerField', - 'baz':'CharField', + fields={'foo': 'BooleanField', + 'bar': 'IntegerField', + 'baz': 'CharField', }) def test_options_method_model_resource_list_view(self): @@ -87,9 +89,9 @@ class BaseViewTests(TestCase): self._verify_options_response(response, name='Mock List', description='This is a mock model-based resource', - fields={'foo':'BooleanField', - 'bar':'IntegerField', - 'baz':'CharField', + fields={'foo': 'BooleanField', + 'bar': 'IntegerField', + 'baz': 'CharField', }) def test_options_method_model_resource_detail_view(self): @@ -97,17 +99,16 @@ class BaseViewTests(TestCase): self._verify_options_response(response, name='Mock Instance', description='This is a mock model-based resource', - fields={'foo':'BooleanField', - 'bar':'IntegerField', - 'baz':'CharField', + 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) - parser = JSONParser(None) - (data, files) = parser.parse(StringIO(response.content)) + data = json.loads(response.content) self.assertTrue('application/json' in data['renders']) self.assertEqual(name, data['name']) self.assertEqual(description, data['description']) @@ -123,15 +124,12 @@ class ExtraViewsTests(TestCase): def test_login_view(self): """Ensure the login view exists""" - response = self.client.get('/accounts/login') + response = self.client.get(reverse('djangorestframework: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('/accounts/logout') + response = self.client.get(reverse('djangorestframework:logout')) self.assertEqual(response.status_code, 200) self.assertEqual(response['Content-Type'].split(';')[0], 'text/html') - - # TODO: Add login/logout behaviour tests - -- cgit v1.2.3 From aed26b218ea39110489e85abc6f412399a1774a1 Mon Sep 17 00:00:00 2001 From: Tom Christie Date: Fri, 24 Aug 2012 22:11:00 +0100 Subject: Drop out resources & mixins --- djangorestframework/tests/views.py | 263 ++++++++++++++++++------------------- 1 file changed, 128 insertions(+), 135 deletions(-) (limited to 'djangorestframework/tests/views.py') diff --git a/djangorestframework/tests/views.py b/djangorestframework/tests/views.py index 00bce002..d4e4098a 100644 --- a/djangorestframework/tests/views.py +++ b/djangorestframework/tests/views.py @@ -1,135 +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 import forms -from django.db import models -from django.utils import simplejson as json - -from djangorestframework.resources import ModelResource -from djangorestframework.views import ( - View, - ListOrCreateModelView, - InstanceModelView -) - - -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[^/]+)/$', InstanceModelView.as_view(resource=MockResource)), - url(r'^restframework/', include('djangorestframework.urls', namespace='djangorestframework')), -) - - -class BaseViewTests(TestCase): - """Test the base view class of djangorestframework""" - urls = 'djangorestframework.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 djangorestframework provides""" - urls = 'djangorestframework.tests.views' - - def test_login_view(self): - """Ensure the login view exists""" - response = self.client.get(reverse('djangorestframework: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('djangorestframework:logout')) - self.assertEqual(response.status_code, 200) - self.assertEqual(response['Content-Type'].split(';')[0], 'text/html') +# 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 djangorestframework.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[^/]+)/$', InstanceModelView.as_view(resource=MockResource)), +# url(r'^restframework/', include('djangorestframework.urls', namespace='djangorestframework')), +# ) + + +# class BaseViewTests(TestCase): +# """Test the base view class of djangorestframework""" +# urls = 'djangorestframework.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 djangorestframework provides""" +# urls = 'djangorestframework.tests.views' + +# def test_login_view(self): +# """Ensure the login view exists""" +# response = self.client.get(reverse('djangorestframework: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('djangorestframework:logout')) +# self.assertEqual(response.status_code, 200) +# self.assertEqual(response['Content-Type'].split(';')[0], 'text/html') -- cgit v1.2.3 From 87dae4d8549c02fa9a57adb3bb876d249dae1f79 Mon Sep 17 00:00:00 2001 From: Tom Christie Date: Thu, 20 Sep 2012 13:19:43 +0100 Subject: Remove old 'djangorestframework directories --- djangorestframework/tests/views.py | 128 ------------------------------------- 1 file changed, 128 deletions(-) delete mode 100644 djangorestframework/tests/views.py (limited to 'djangorestframework/tests/views.py') diff --git a/djangorestframework/tests/views.py b/djangorestframework/tests/views.py deleted file mode 100644 index d4e4098a..00000000 --- a/djangorestframework/tests/views.py +++ /dev/null @@ -1,128 +0,0 @@ -# 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 djangorestframework.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[^/]+)/$', InstanceModelView.as_view(resource=MockResource)), -# url(r'^restframework/', include('djangorestframework.urls', namespace='djangorestframework')), -# ) - - -# class BaseViewTests(TestCase): -# """Test the base view class of djangorestframework""" -# urls = 'djangorestframework.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 djangorestframework provides""" -# urls = 'djangorestframework.tests.views' - -# def test_login_view(self): -# """Ensure the login view exists""" -# response = self.client.get(reverse('djangorestframework: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('djangorestframework:logout')) -# self.assertEqual(response.status_code, 200) -# self.assertEqual(response['Content-Type'].split(';')[0], 'text/html') -- cgit v1.2.3