Verify that bug 45541 can be resolved, add some more checks in XSLFFileHandler
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1705804 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
1b2b506edb
commit
72ae82f7dc
@ -16,13 +16,16 @@
|
||||
==================================================================== */
|
||||
package org.apache.poi.stress;
|
||||
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertNotNull;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.FileInputStream;
|
||||
import java.io.InputStream;
|
||||
|
||||
import org.apache.poi.extractor.ExtractorFactory;
|
||||
import org.apache.poi.xslf.XSLFSlideShow;
|
||||
import org.apache.poi.xslf.extractor.XSLFPowerPointExtractor;
|
||||
import org.apache.poi.xslf.usermodel.XMLSlideShow;
|
||||
import org.junit.Test;
|
||||
|
||||
@ -43,7 +46,25 @@ public class XSLFFileHandler extends SlideShowHandler {
|
||||
slide.close();
|
||||
}
|
||||
|
||||
// a test-case to test this locally without executing the full TestAllFiles
|
||||
public void handleExtracting(File file) throws Exception {
|
||||
super.handleExtracting(file);
|
||||
|
||||
|
||||
// additionally try the other getText() methods
|
||||
|
||||
XSLFPowerPointExtractor extractor = (XSLFPowerPointExtractor) ExtractorFactory.createExtractor(file);
|
||||
try {
|
||||
assertNotNull(extractor);
|
||||
|
||||
assertNotNull(extractor.getText(true, true, true));
|
||||
assertEquals("With all options disabled we should not get text",
|
||||
"", extractor.getText(false, false, false));
|
||||
} finally {
|
||||
extractor.close();
|
||||
}
|
||||
}
|
||||
|
||||
// a test-case to test this locally without executing the full TestAllFiles
|
||||
@Test
|
||||
public void test() throws Exception {
|
||||
InputStream stream = new FileInputStream("test-data/slideshow/ae.ac.uaeu.faculty_nafaachbili_GeomLec1.pptx");
|
||||
@ -58,5 +79,5 @@ public class XSLFFileHandler extends SlideShowHandler {
|
||||
@Test
|
||||
public void testExtractor() throws Exception {
|
||||
handleExtracting(new File("test-data/slideshow/ae.ac.uaeu.faculty_nafaachbili_GeomLec1.pptx"));
|
||||
}
|
||||
}
|
||||
}
|
@ -16,11 +16,14 @@
|
||||
==================================================================== */
|
||||
package org.apache.poi.xslf.extractor;
|
||||
|
||||
import junit.framework.TestCase;
|
||||
import org.apache.poi.POIDataSamples;
|
||||
import org.apache.poi.POITextExtractor;
|
||||
import org.apache.poi.extractor.ExtractorFactory;
|
||||
import org.apache.poi.openxml4j.opc.OPCPackage;
|
||||
import org.apache.poi.xslf.XSLFSlideShow;
|
||||
|
||||
import junit.framework.TestCase;
|
||||
|
||||
/**
|
||||
* Tests for HXFPowerPointExtractor
|
||||
*/
|
||||
@ -279,4 +282,36 @@ public class TestXSLFPowerPointExtractor extends TestCase {
|
||||
extractor.close();
|
||||
}
|
||||
}
|
||||
|
||||
public void test45541() throws Exception {
|
||||
// extract text from a powerpoint that has a header in the notes-element
|
||||
POITextExtractor extr = ExtractorFactory.createExtractor(slTests
|
||||
.openResourceAsStream("45541_Header.pptx"));
|
||||
String text = extr.getText();
|
||||
assertNotNull(text);
|
||||
assertFalse("Had: " + text, text.contains("testdoc"));
|
||||
|
||||
text = ((XSLFPowerPointExtractor)extr).getText(false, true);
|
||||
assertNotNull(text);
|
||||
assertTrue("Had: " + text, text.contains("testdoc"));
|
||||
extr.close();
|
||||
assertNotNull(text);
|
||||
|
||||
// extract text from a powerpoint that has a footer in the master-slide
|
||||
extr = ExtractorFactory.createExtractor(slTests
|
||||
.openResourceAsStream("45541_Footer.pptx"));
|
||||
text = extr.getText();
|
||||
assertNotNull(text);
|
||||
assertFalse("Had " + text, text.contains("testdoc"));
|
||||
|
||||
text = ((XSLFPowerPointExtractor)extr).getText(false, true);
|
||||
assertNotNull(text);
|
||||
assertFalse("Had: " + text, text.contains("testdoc"));
|
||||
|
||||
text = ((XSLFPowerPointExtractor)extr).getText(false, false, true);
|
||||
assertNotNull(text);
|
||||
assertFalse("Had: " + text, text.contains("testdoc"));
|
||||
|
||||
extr.close();
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user