Как проверить изображения при вызове внешнего API? - PullRequest
0 голосов
/ 07 января 2019

Я звоню с моей конечной точки отдыха на внешний API. Примерно так:

 private byte[] retrieveImageFromExernalAPI() {

            byte[] imageBytes = null;

                URL url = new URL("https://cdau:6443/rest/services/targetEndpoint");
                BufferedImage bufferedImage = ImageIO.read(url);
                imageBytes = convertBufferedImageToByte(bufferedImage, "png");

            } catch (IOException e) {
                //logger.error(e);
                throw new RuntimeException(e);
            }
            return imageBytes;
        }

Как видно из приведенного выше кода, я вызываю внешний API и в качестве ответа получаю объект BufferedImage в Java. Затем я вызываю метод convertBufferedImageToByte(bufferedImage, "png");, который преобразует ответ BufferedImage в изображение (byte[]). Примерно так:

 private byte[] convertBufferedImageToByte(BufferedImage image, String type) throws IOException {
        ByteArrayOutputStream baos = new ByteArrayOutputStream();
        ImageIO.write(image, type, baos);
        byte[] bytes = baos.toByteArray();
        return bytes;
    }

Дело в том, что я действительно не знаю, как это проверить. Должен ли я использовать mockito для насмешки внешнего API или просто JUnit? Я слышал о журчалке, но все еще пытался понять, как она вписывается в эту ситуацию.

Любая помощь будет высоко ценится!

...