def test_delete_non_existent_task(self):

        expected_response = messages.TASK_DOES_NOT_EXIST, 404
        actual_response = TaskDAO.delete_task(
            self.first_user.id, self.mentorship_relation_w_second_user.id,
            123123)

        self.assertEqual(expected_response, actual_response)
    def test_delete_existent_task(self):

        expected_response = messages.TASK_WAS_DELETED_SUCCESSFULLY, 200
        first_task_id = 1

        not_deleted_yet_task = self.tasks_list_1.find_task_by_id(
            task_id=first_task_id)
        self.assertIsNotNone(not_deleted_yet_task)

        actual_response = TaskDAO.delete_task(
            self.first_user.id, self.mentorship_relation_w_second_user.id,
            first_task_id)
        self.assertEqual(expected_response, actual_response)

        deleted_task = self.tasks_list_1.find_task_by_id(task_id=first_task_id)
        self.assertIsNone(deleted_task)
    def delete(cls, request_id, task_id):
        """
        Delete a task.

        Input:
        1. Header: valid access token
        2. Path: ID of the task to be deleted (task_id) and it ID of the associated
        mentorship relation (request_id).
        3. Body: JSON object containing description of task.

        Returns:
        Success or failure message. Task is deleted if request is successful.
        """

        # TODO check if user id is well parsed, if it is an integer

        user_id = get_jwt_identity()

        response = TaskDAO.delete_task(user_id=user_id,
                                       mentorship_relation_id=request_id,
                                       task_id=task_id)

        return response