
org.catools.media.model.CScreenShot Maven / Gradle / Ivy
package org.catools.media.model;
import org.catools.common.io.CFile;
import org.catools.media.enums.CImageComparisonType;
import org.catools.media.extensions.types.interfaces.CImageComparisionExtension;
import org.catools.media.utils.CImageComparisionUtil;
import org.catools.media.utils.CImageUtil;
import java.awt.image.BufferedImage;
public abstract class CScreenShot implements CImageComparisionExtension {
@Override
public boolean isEqual(BufferedImage expected) {
return CImageComparisionUtil.getDiffs(getValue(), expected, CImageComparisonType.GRAY_FLOAT_32).isEmpty();
}
@Override
public int hashCode() {
return getValue().hashCode();
}
@Override
public boolean equals(Object obj) {
return isEqual((BufferedImage) obj);
}
public void saveAsPng(CFile file) {
saveAs("png", file);
}
public void saveAs(String formatName, CFile file) {
CImageUtil.writeImage(getValue(), formatName, file);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy