mirror of
				https://github.com/encode/django-rest-framework.git
				synced 2025-10-31 07:57:55 +03:00 
			
		
		
		
	More tests for overloaded json requests and normal json requests
This commit is contained in:
		
							parent
							
								
									7e2e3cbf6e
								
							
						
					
					
						commit
						a53101bea9
					
				|  | @ -114,7 +114,7 @@ class TestContentParsing(TestCase): | ||||||
|         self.assertEqual(view.DATA.items(), form_data.items()) |         self.assertEqual(view.DATA.items(), form_data.items()) | ||||||
|         self.assertEqual(view.request.POST.items(), form_data.items()) |         self.assertEqual(view.request.POST.items(), form_data.items()) | ||||||
|      |      | ||||||
|     def test_empty_post_after_data_for_json(self): |     def test_accessing_post_after_data_for_json(self): | ||||||
|         """Ensures request.POST can be accessed after request.DATA in json request""" |         """Ensures request.POST can be accessed after request.DATA in json request""" | ||||||
|         from django.utils import simplejson as json |         from django.utils import simplejson as json | ||||||
|          |          | ||||||
|  | @ -125,6 +125,22 @@ class TestContentParsing(TestCase): | ||||||
|         view = RequestMixin() |         view = RequestMixin() | ||||||
|         view.parsers = (JSONParser,) |         view.parsers = (JSONParser,) | ||||||
|          |          | ||||||
|  |         view.request = self.req.post('/', content, content_type=content_type) | ||||||
|  |          | ||||||
|  |         self.assertEqual(view.DATA.items(), data.items()) | ||||||
|  |         self.assertEqual(view.request.POST.items(), []) | ||||||
|  |      | ||||||
|  |     def test_accessing_post_after_data_for_overloaded_json(self): | ||||||
|  |         """Ensures request.POST can be accessed after request.DATA in overloaded json request""" | ||||||
|  |         from django.utils import simplejson as json | ||||||
|  |          | ||||||
|  |         data = {'qwerty': 'uiop'} | ||||||
|  |         content = json.dumps(data) | ||||||
|  |         content_type = 'application/json' | ||||||
|  |          | ||||||
|  |         view = RequestMixin() | ||||||
|  |         view.parsers = (JSONParser,) | ||||||
|  |          | ||||||
|         form_data = {view._CONTENT_PARAM: content, |         form_data = {view._CONTENT_PARAM: content, | ||||||
|                      view._CONTENTTYPE_PARAM: content_type} |                      view._CONTENTTYPE_PARAM: content_type} | ||||||
|          |          | ||||||
|  | @ -143,7 +159,7 @@ class TestContentParsing(TestCase): | ||||||
|         self.assertEqual(view.request.POST.items(), form_data.items()) |         self.assertEqual(view.request.POST.items(), form_data.items()) | ||||||
|         self.assertEqual(view.DATA.items(), form_data.items()) |         self.assertEqual(view.DATA.items(), form_data.items()) | ||||||
|      |      | ||||||
|     def test_accessing_data_after_post_json(self): |     def test_accessing_data_after_post_for_json(self): | ||||||
|         """Ensures request.DATA can be accessed after request.POST in json request""" |         """Ensures request.DATA can be accessed after request.POST in json request""" | ||||||
|         from django.utils import simplejson as json |         from django.utils import simplejson as json | ||||||
|          |          | ||||||
|  | @ -154,6 +170,26 @@ class TestContentParsing(TestCase): | ||||||
|         view = RequestMixin() |         view = RequestMixin() | ||||||
|         view.parsers = (JSONParser,) |         view.parsers = (JSONParser,) | ||||||
|          |          | ||||||
|  |         view.request = self.req.post('/', content, content_type=content_type) | ||||||
|  |          | ||||||
|  |         post_items = view.request.POST.items() | ||||||
|  |          | ||||||
|  |         self.assertEqual(len(post_items), 1) | ||||||
|  |         self.assertEqual(len(post_items[0]), 2) | ||||||
|  |         self.assertEqual(post_items[0][0], content) | ||||||
|  |         self.assertEqual(view.DATA.items(), data.items()) | ||||||
|  |      | ||||||
|  |     def test_accessing_data_after_post_for_overloaded_json(self): | ||||||
|  |         """Ensures request.DATA can be accessed after request.POST in overloaded json request""" | ||||||
|  |         from django.utils import simplejson as json | ||||||
|  |          | ||||||
|  |         data = {'qwerty': 'uiop'} | ||||||
|  |         content = json.dumps(data) | ||||||
|  |         content_type = 'application/json' | ||||||
|  |          | ||||||
|  |         view = RequestMixin() | ||||||
|  |         view.parsers = (JSONParser,) | ||||||
|  |          | ||||||
|         form_data = {view._CONTENT_PARAM: content, |         form_data = {view._CONTENT_PARAM: content, | ||||||
|                      view._CONTENTTYPE_PARAM: content_type} |                      view._CONTENTTYPE_PARAM: content_type} | ||||||
|          |          | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue
	
	Block a user