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
Beispiel #2
0
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
Beispiel #4
0
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