def test_delete_post_with_valid_details_deletes_post(user, post): # Arrange false = False # Act delete_post(user_id=user.id, post_id=post.id) # Assert assert Post.objects.filter(id=post.id).exists() == false
def api_wrapper(*args, **kwargs): post_id = kwargs['post_id'] user = kwargs['user'] try: delete_post(user_id=user.id, post_id=post_id) except InvalidPostException: raise BadRequest(*INVALID_POST) except UserCannotDeletePostException: raise BadRequest(*USER_CANNOT_DELETE_POST) return HttpResponse(status=200)
def test_delete_post_with_invalid_post_returns_exception(user): # Arrange user_id = user.id post_id = 1 # Act with pytest.raises(InvalidPostException): assert delete_post(user_id=user_id, post_id=post_id) # Assert
def get_delete_post_view(request, post_id): request_serializer = DeletePostRequestSerializer(data=request.data) is_valid_data = request_serializer.is_valid() if is_valid_data: request_object = request_serializer.save() try: delete_post( user_id=request_object.user_id, post_id=post_id ) except InvalidPostException: return Response(status=404) except InvalidPostException: return Response(status=404) except UserCannotDeletePostException: return Response(status=403) return Response(status=200)
def test_delete_post_with_another_user_returns_exception( users_data, posts_data, user): # Arrange user_id = user post_id = 4 # Act with pytest.raises(UserCannotDeletePostException): assert delete_post(user_id=user_id, post_id=post_id) # Assert