Ложный входящий ответ Jax-RS с сущностью - PullRequest
0 голосов
/ 26 сентября 2019

Я пытаюсь провести модульное тестирование класса, который использует клиент Jersey 2 + Moxy для вызова службы REST.Я хочу смоделировать ответ, который содержит большой объект JSON.Код структурирован таким образом, что я могу переопределить / смоделировать следующий метод:

protected Response doPost(String path, Entity<?> entity) {
    Invocation.Builder invocationBuilder = getRestInvocationBuilder(path);
    Response response = invocationBuilder.post(entity);
    return response;
}

Я хотел бы каким-то образом вставить некоторые примеры данных JSON (в идеале из файла) в Response на этом этапе,до вызова readEntity(), чтобы я мог проверить, что данные JSON правильно распакованы в целевой объект.

Есть ли способ сделать это?Обратите внимание, что это для модульного тестирования, и поэтому я не заинтересован в запуске локального сервера или других методов интеграционного тестирования.

Мне известно, что подобные вопросы задавались, но многие из них кажутся устаревшими или неполнымирешения.Самое близкое решение, которое предлагается, это смоделировать метод Response readEntity(), для меня это не сработает, потому что это будет включать создание объекта нужного типа для возврата, а не создание объекта из данных JSON в качестве примера.

...