Para mí, esta aplicación concreta parece funcionar:
private void compareRasterImages(BufferedImage expectedPngIo, BufferedImage actualPngIo) throws AssertionError {
int minX = expectedPngIo.getMinX();
int minY = expectedPngIo.getMinY();
int maxX = expectedPngIo.getMinX() + expectedPngIo.getWidth();
int maxY = expectedPngIo.getMinY()+ expectedPngIo.getHeight();
assertEquals(minX, actualPngIo.getMinX());
assertEquals(minY, actualPngIo.getMinY());
assertEquals(expectedPngIo.getHeight(), actualPngIo.getHeight());
assertEquals(expectedPngIo.getWidth(), actualPngIo.getWidth());
for (int x_i = minX; x_i < maxX; x_i++){
for (int y_i = minY; y_i < maxY; y_i++) {
assertEquals(expectedPngIo.getRGB(x_i, y_i), actualPngIo.getRGB(x_i, y_i));
}
}
}
que recuperar el BufferedImage de mi PNG (como byte []) utilizando ImageIO:
BufferedImage expectedPngIo = ImageIO.read(new ByteArrayInputStream(expectedPng));
enter code here
Bueno, ¿de qué te gustaría estar seguro? –
Buena pregunta :-) Ahora, cuando lo pienso, quizás no sea tan importante probar si la imagen es exactamente como se esperaba, pero si algunas características esperadas están presentes. – PeWu