You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@poi.apache.org by fa...@apache.org on 2022/07/01 16:30:15 UTC
svn commit: r1902395 - in /poi/trunk: poi-ooxml/src/test/java/org/apache/poi/xslf/usermodel/TestXSLFSlideShowFactory.java poi-scratchpad/src/test/java/org/apache/poi/hslf/usermodel/TestHSLFSlideShowFactory.java
Author: fanningpj
Date: Fri Jul 1 16:30:15 2022
New Revision: 1902395
URL: http://svn.apache.org/viewvc?rev=1902395&view=rev
Log:
[bug-65634] NotOLE2FileException not thrown in POI 5.0.0 by opening an XML-RAW File with SlideShowFactory.create()
Modified:
poi/trunk/poi-ooxml/src/test/java/org/apache/poi/xslf/usermodel/TestXSLFSlideShowFactory.java
poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/usermodel/TestHSLFSlideShowFactory.java
Modified: poi/trunk/poi-ooxml/src/test/java/org/apache/poi/xslf/usermodel/TestXSLFSlideShowFactory.java
URL: http://svn.apache.org/viewvc/poi/trunk/poi-ooxml/src/test/java/org/apache/poi/xslf/usermodel/TestXSLFSlideShowFactory.java?rev=1902395&r1=1902394&r2=1902395&view=diff
==============================================================================
--- poi/trunk/poi-ooxml/src/test/java/org/apache/poi/xslf/usermodel/TestXSLFSlideShowFactory.java (original)
+++ poi/trunk/poi-ooxml/src/test/java/org/apache/poi/xslf/usermodel/TestXSLFSlideShowFactory.java Fri Jul 1 16:30:15 2022
@@ -20,8 +20,10 @@ package org.apache.poi.xslf.usermodel;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertThrows;
import static org.junit.jupiter.api.Assertions.assertTrue;
+import static org.junit.jupiter.api.Assertions.fail;
import java.io.File;
+import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
@@ -34,8 +36,11 @@ import org.apache.poi.poifs.crypt.Encryp
import org.apache.poi.poifs.crypt.Encryptor;
import org.apache.poi.poifs.filesystem.POIFSFileSystem;
import org.apache.poi.sl.usermodel.BaseTestSlideShowFactory;
+import org.apache.poi.sl.usermodel.SlideShow;
+import org.apache.poi.sl.usermodel.SlideShowFactory;
import org.apache.poi.util.IOUtils;
import org.apache.poi.util.TempFile;
+import org.apache.poi.xssf.XSSFTestDataSamples;
import org.junit.jupiter.api.Test;
public final class TestXSLFSlideShowFactory extends BaseTestSlideShowFactory {
@@ -87,6 +92,27 @@ public final class TestXSLFSlideShowFact
testFactoryFromProtectedNative(pFile.getAbsolutePath(), password);
}
+ @Test
+ void testBug65634() throws IOException {
+ File file = XSSFTestDataSamples.getSampleFile("workbook.xml");
+ try (FileInputStream fis = new FileInputStream(file)) {
+ try {
+ SlideShow slideShow = SlideShowFactory.create(fis);
+ if (slideShow != null) slideShow.close();
+ fail("SlideShowFactory.create should have failed");
+ } catch (IOException ie) {
+ assertEquals("Can't open slideshow - unsupported file type: XML", ie.getMessage());
+ }
+ }
+ try {
+ SlideShow slideShow = SlideShowFactory.create(file);
+ if (slideShow != null) slideShow.close();
+ fail("SlideShowFactory.create should have failed");
+ } catch (IOException ie) {
+ assertEquals("Can't open slideshow - unsupported file type: XML", ie.getMessage());
+ }
+ }
+
private static File createProtected() throws IOException, GeneralSecurityException {
try (POIFSFileSystem fs = new POIFSFileSystem()) {
EncryptionInfo info = new EncryptionInfo(EncryptionMode.agile);
Modified: poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/usermodel/TestHSLFSlideShowFactory.java
URL: http://svn.apache.org/viewvc/poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/usermodel/TestHSLFSlideShowFactory.java?rev=1902395&r1=1902394&r2=1902395&view=diff
==============================================================================
--- poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/usermodel/TestHSLFSlideShowFactory.java (original)
+++ poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/usermodel/TestHSLFSlideShowFactory.java Fri Jul 1 16:30:15 2022
@@ -17,12 +17,43 @@
package org.apache.poi.hslf.usermodel;
+import org.apache.poi.hssf.HSSFTestDataSamples;
import org.apache.poi.sl.usermodel.BaseTestSlideShowFactory;
+import org.apache.poi.sl.usermodel.SlideShow;
+import org.apache.poi.sl.usermodel.SlideShowFactory;
import org.junit.jupiter.api.Test;
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.IOException;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.fail;
+
public final class TestHSLFSlideShowFactory extends BaseTestSlideShowFactory {
@Test
void testFactory() throws Exception {
testFactory("pictures.ppt", "Password_Protected-hello.ppt", "hello");
}
+
+ @Test
+ void testBug65634() throws IOException {
+ File file = HSSFTestDataSamples.getSampleFile("workbook.xml");
+ try (FileInputStream fis = new FileInputStream(file)) {
+ try {
+ SlideShow slideShow = SlideShowFactory.create(fis);
+ if (slideShow != null) slideShow.close();
+ fail("SlideShowFactory.create should have failed");
+ } catch (IOException ie) {
+ assertEquals("Can't open slideshow - unsupported file type: XML", ie.getMessage());
+ }
+ }
+ try {
+ SlideShow slideShow = SlideShowFactory.create(file);
+ if (slideShow != null) slideShow.close();
+ fail("SlideShowFactory.create should have failed");
+ } catch (IOException ie) {
+ assertEquals("Can't open slideshow - unsupported file type: XML", ie.getMessage());
+ }
+ }
}
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@poi.apache.org
For additional commands, e-mail: commits-help@poi.apache.org