removed test which is covered by TestPPTX2PNG

git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1880910 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Andreas Beeker 2020-08-16 23:19:11 +00:00
parent b57da2dada
commit afe4a109a8

View File

@ -22,42 +22,28 @@ import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertNull;
import static org.junit.Assert.assertSame;
import java.awt.BasicStroke;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Graphics2D;
import java.awt.Rectangle;
import java.awt.geom.Rectangle2D;
import java.awt.image.BufferedImage;
import java.io.ByteArrayInputStream;
import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.lang.reflect.Constructor;
import java.lang.reflect.InvocationTargetException;
import java.util.BitSet;
import java.util.List;
import javax.imageio.ImageIO;
import org.apache.poi.POIDataSamples;
import org.apache.poi.ddf.EscherBSERecord;
import org.apache.poi.hssf.usermodel.DummyGraphics2d;
import org.apache.poi.sl.draw.DrawFactory;
import org.apache.poi.sl.usermodel.PictureData.PictureType;
import org.apache.poi.sl.usermodel.Slide;
import org.apache.poi.sl.usermodel.SlideShow;
import org.junit.BeforeClass;
import org.junit.Ignore;
import org.junit.Test;
/**
* Test Picture shape.
*
* @author Yegor Kozlov
*/
public final class TestPicture {
private static POIDataSamples _slTests = POIDataSamples.getSlideShowInstance();
private static final POIDataSamples _slTests = POIDataSamples.getSlideShowInstance();
@BeforeClass
public static void disableImageIOCache() {
@ -71,8 +57,7 @@ public final class TestPicture {
*/
@Test
public void multiplePictures() throws IOException {
HSLFSlideShow ppt = new HSLFSlideShow();
try (HSLFSlideShow ppt = new HSLFSlideShow()) {
HSLFSlide s = ppt.createSlide();
HSLFSlide s2 = ppt.createSlide();
HSLFSlide s3 = ppt.createSlide();
@ -98,8 +83,7 @@ public final class TestPicture {
EscherBSERecord bse3 = pict.getEscherBSERecord();
assertSame(bse2, bse3);
assertEquals(3, bse1.getRef());
ppt.close();
}
}
/**
@ -108,7 +92,7 @@ public final class TestPicture {
*/
@Test
public void bug46122() throws IOException {
HSLFSlideShow ppt = new HSLFSlideShow();
try (HSLFSlideShow ppt = new HSLFSlideShow()) {
HSLFSlide slide = ppt.createSlide();
HSLFPictureData pd = HSLFPictureData.create(PictureType.PNG);
@ -121,13 +105,13 @@ public final class TestPicture {
BufferedImage img = new BufferedImage(100, 100, BufferedImage.TYPE_INT_RGB);
Graphics2D graphics = img.createGraphics();
pict.draw(graphics, null);
ppt.close();
}
}
@Test
public void macImages() throws IOException {
HSLFSlideShowImpl hss = new HSLFSlideShowImpl(_slTests.openResourceAsStream("53446.ppt"));
try (InputStream is = _slTests.openResourceAsStream("53446.ppt");
HSLFSlideShowImpl hss = new HSLFSlideShowImpl(is)) {
List<HSLFPictureData> pictures = hss.getPictureData();
assertEquals(15, pictures.size());
@ -160,65 +144,12 @@ public final class TestPicture {
break;
default:
assertNotNull(image);
assertNotNull(dimensions);
assertEquals(dimensions[0], image.getWidth());
assertEquals(dimensions[1], image.getHeight());
break;
}
}
hss.close();
}
@Test
@Ignore("Just for visual validation - antialiasing is different on various systems")
public void bug54541()
throws IOException, ClassNotFoundException, SecurityException, NoSuchMethodException, IllegalArgumentException, InstantiationException, IllegalAccessException, InvocationTargetException {
String[] files = {
// "sample_pptx_grouping_issues.pptx",
// "54542_cropped_bitmap.pptx",
// "54541_cropped_bitmap.ppt",
// "54541_cropped_bitmap2.ppt",
"alterman_security.ppt",
// "alterman_security3.pptx",
};
BitSet pages = new BitSet();
pages.set(2);
for (String file : files) {
InputStream is = _slTests.openResourceAsStream(file);
SlideShow<?,?> ss;
if (file.endsWith("pptx")) {
Class<?> cls = Class.forName("org.apache.poi.xslf.usermodel.XMLSlideShow");
Constructor<?> ct = cls.getDeclaredConstructor(InputStream.class);
ss = (SlideShow<?,?>)ct.newInstance(is);
} else {
ss = new HSLFSlideShow(is);
}
is.close();
boolean debugOut = false;
Dimension pg = ss.getPageSize();
for (Slide<?,?> slide : ss.getSlides()) {
int slideNo = slide.getSlideNumber();
if (!pages.get(slideNo-1)) {
if (pages.nextSetBit(slideNo-1) == -1) break; else continue;
}
if (debugOut) {
DummyGraphics2d graphics = new DummyGraphics2d();
slide.draw(graphics);
} else {
BufferedImage img = new BufferedImage(pg.width, pg.height, BufferedImage.TYPE_INT_ARGB);
Graphics2D graphics = img.createGraphics();
slide.draw(graphics);
graphics.setColor(Color.BLACK);
graphics.setStroke(new BasicStroke(1));
graphics.drawRect(0, 0, (int)pg.getWidth()-1, (int)pg.getHeight()-1);
ImageIO.write(img, "PNG", new File(file.replaceFirst(".pptx?", "-")+slideNo+".png"));
}
}
ss.close();
}
}
}