def test_post_invalid(self): request = APIRequestFactory() request.data = {'username': '******', 'password': '******'} view = CustomAuthToken() with self.assertRaises(ValidationError): response = view.post(request)
def test_failed_create_comment_API(self): data = {"text": "", "statement": "1"} request = APIRequestFactory().post('/api/comment/', data=data) request.data = data request.user = self.user view = CreateCommentAPIView() view.setup(request) view.create(request) comment = Comment.objects.first() self.assertIsNone(comment)
def test_post(self): request = APIRequestFactory() request.data = {'username': '******', 'password': '******'} view = CustomAuthToken() response = view.post(request) self.assertEqual(response.status_code, 200) self.assertEqual(response.data['username'], 'admin') self.assertEqual(response.data['email'], '*****@*****.**')
def create_view(view_class, url, url_kwargs, payload=None, action_map=None, request_user=None): request_type, method_called = None, None for key, val in action_map.items(): request_type, method_called = key, val if request_type == 'get': request = APIRequestFactory().get(url, format='json') elif request_type == 'post': request = APIRequestFactory().post(url, data=payload, format='json') elif request_type == 'put': request = APIRequestFactory().put(url, data=payload, format='json') elif request_type == 'patch': request = APIRequestFactory().patch(url, data=payload, format='json') elif request_type == 'delete': request = APIRequestFactory().delete(url, format='json') else: request = APIRequestFactory().get(url, format='json') if request_user: request.user = request_user else: request.user = AnonymousUser() request.kwargs = url_kwargs request.data = payload instantiated_view_class = view_class() instantiated_view_class.action_map = action_map instantiated_view_class.dispatch(request, **url_kwargs) if method_called == 'list': response = instantiated_view_class.list(request, **url_kwargs) elif method_called == 'retrieve': response = instantiated_view_class.retrieve(request, **url_kwargs) elif method_called == 'update': response = instantiated_view_class.update(request, **url_kwargs) elif method_called == 'partial_update': response = instantiated_view_class.partial_update( request, **url_kwargs) elif method_called == 'delete': response = instantiated_view_class.delete(request, **url_kwargs) else: response = instantiated_view_class.list(request, **url_kwargs) return response