package org.weasis.core.ui.model.graphic.imp;
import static org.assertj.core.api.Assertions.assertThat;
import java.awt.Color;
import java.awt.geom.Point2D;
import java.awt.geom.Rectangle2D;
import java.util.Arrays;
import java.util.List;
import org.weasis.core.api.service.WProperties;
import org.weasis.core.ui.test.testers.GraphicTester;
public class PixelInfoGraphicTest extends GraphicTester<PixelInfoGraphic> {
private static final String XML_0 = "/graphic/pixel/pixel.graphic.0.xml"; //$NON-NLS-1$
private static final String XML_1 = "/graphic/pixel/pixel.graphic.1.xml"; //$NON-NLS-1$
static final String BASIC_TPL =
"<pixelInfo fill=\"%s\" showLabel=\"%s\" thickness=\"%s\" uuid=\"%s\">" //$NON-NLS-1$
+ "<paint rgb=\"%s\"/>" //$NON-NLS-1$
+ "<pts/>" //$NON-NLS-1$
+ "</pixelInfo>"; //$NON-NLS-1$
public static final PixelInfoGraphic COMPLETE_OBJECT = new PixelInfoGraphic();
static {
COMPLETE_OBJECT.setUuid(GRAPHIC_UUID_1);
COMPLETE_OBJECT.setLineThickness(2.0f);
COMPLETE_OBJECT.setColorPaint(Color.PINK);
List<Point2D.Double> pts = Arrays.asList(
new Point2D.Double(1665.5, 987.0),
new Point2D.Double(1601.5, 1037.0)
);
COMPLETE_OBJECT.setPts(pts);
COMPLETE_OBJECT.setLabelWidth(112.53125);
COMPLETE_OBJECT.setLabelHeight(13.125);
COMPLETE_OBJECT.setLabels(new String[]{ " R=144 G=116 B=101"}); //$NON-NLS-1$
COMPLETE_OBJECT.setLabelBounds(new Rectangle2D.Double(1539.234375, 1024.4375, 124.53125, 25.125));
}
@Override
public String getTemplate() {
return BASIC_TPL;
}
@Override
public Object[] getParameters() {
return new Object[]{
PixelInfoGraphic.DEFAULT_FILLED,
PixelInfoGraphic.DEFAULT_LABEL_VISISIBLE,
PixelInfoGraphic.DEFAULT_LINE_THICKNESS,
getGraphicUuid(),
WProperties.color2Hexadecimal(PixelInfoGraphic.DEFAULT_COLOR, true)
};
}
@Override
public void additionalTestsForDeserializeBasicGraphic(PixelInfoGraphic result, PixelInfoGraphic expected) {
AnnotationGraphicTest.checkForDeserializeBasicGraphic(result, expected);
assertThat(result.getPixelInfo()).isNull();
}
@Override
public String getXmlFilePathCase0() {
return XML_0;
}
@Override
public String getXmlFilePathCase1() {
return XML_1;
}
@Override
public PixelInfoGraphic getExpectedDeserializeCompleteGraphic() {
return COMPLETE_OBJECT;
}
}