Author: fanningpj Date: Fri Oct 27 16:59:49 2023 New Revision: 1913396 URL: http://svn.apache.org/viewvc?rev=1913396&view=rev Log: some tests
Added: poi/trunk/poi-ooxml/src/test/java/org/apache/poi/xdgf/usermodel/section/TestXmlVisioDocument.java - copied, changed from r1913393, poi/trunk/poi-ooxml/src/test/java/org/apache/poi/xdgf/extractor/TestXDGFVisioExtractor.java Copied: poi/trunk/poi-ooxml/src/test/java/org/apache/poi/xdgf/usermodel/section/TestXmlVisioDocument.java (from r1913393, poi/trunk/poi-ooxml/src/test/java/org/apache/poi/xdgf/extractor/TestXDGFVisioExtractor.java) URL: http://svn.apache.org/viewvc/poi/trunk/poi-ooxml/src/test/java/org/apache/poi/xdgf/usermodel/section/TestXmlVisioDocument.java?p2=poi/trunk/poi-ooxml/src/test/java/org/apache/poi/xdgf/usermodel/section/TestXmlVisioDocument.java&p1=poi/trunk/poi-ooxml/src/test/java/org/apache/poi/xdgf/extractor/TestXDGFVisioExtractor.java&r1=1913393&r2=1913396&rev=1913396&view=diff ============================================================================== --- poi/trunk/poi-ooxml/src/test/java/org/apache/poi/xdgf/extractor/TestXDGFVisioExtractor.java (original) +++ poi/trunk/poi-ooxml/src/test/java/org/apache/poi/xdgf/usermodel/section/TestXmlVisioDocument.java Fri Oct 27 16:59:49 2023 @@ -14,97 +14,42 @@ See the License for the specific language governing permissions and limitations under the License. ==================================================================== */ -package org.apache.poi.xdgf.extractor; - -import static org.apache.poi.POITestCase.assertContains; -import static org.junit.jupiter.api.Assertions.assertEquals; - -import java.io.IOException; -import java.io.InputStream; +package org.apache.poi.xdgf.usermodel.section; import org.apache.poi.POIDataSamples; -import org.apache.poi.openxml4j.opc.OPCPackage; +import org.apache.poi.ooxml.TrackingInputStream; import org.apache.poi.xdgf.usermodel.XmlVisioDocument; -import org.junit.jupiter.api.AfterEach; -import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; -class TestXDGFVisioExtractor { - - private static final POIDataSamples SAMPLES = POIDataSamples.getDiagramInstance(); - private OPCPackage pkg; - private XmlVisioDocument xml; - - @BeforeEach - void setUp() throws Exception { - pkg = OPCPackage.open(SAMPLES.openResourceAsStream("test_text_extraction.vsdx")); - xml = new XmlVisioDocument(pkg); - } - - @AfterEach - void closeResources() throws IOException { - if(xml != null) { - xml.close(); - } - pkg.close(); - } +import java.io.IOException; - @Test - void testGetSimpleText() throws IOException { - XDGFVisioExtractor extractor = new XDGFVisioExtractor(xml); - extractor.getText(); - - String text = extractor.getText(); - String expected = "Text here\nText there\nText, text, everywhere!\nRouter here\n"; - assertEquals(expected, text); +import static org.junit.jupiter.api.Assertions.assertFalse; +import static org.junit.jupiter.api.Assertions.assertTrue; - extractor.close(); - } +class TestXmlVisioDocument { + private static final POIDataSamples SAMPLES = POIDataSamples.getDiagramInstance(); - //the point of this is to trigger the addition of - //some common visio classes -- ConnectsType @Test - void testVisioConnects() throws IOException { - XmlVisioDocument document; - try (InputStream is = SAMPLES.openResourceAsStream("60489.vsdx")) { - document = new XmlVisioDocument(is); - } - try (XDGFVisioExtractor extractor = new XDGFVisioExtractor(document)) { - String text = extractor.getText(); - assertContains(text, "Arrears"); + void testInputStreamClosed() throws IOException { + try (TrackingInputStream stream = new TrackingInputStream( + SAMPLES.openResourceAsStream("test_text_extraction.vsdx"))) { + try (XmlVisioDocument xmlVisioDocument = new XmlVisioDocument(stream)) { + assertFalse(xmlVisioDocument.getPages().isEmpty()); + } + assertTrue(stream.isClosed(), "stream was closed?"); } } - /** - * Some confusion on PolylineTo vs PolyLineTo, both should be handled. - * Previously failed with: - * org.apache.poi.ooxml.POIXMLException: Invalid 'Row_Type' name 'PolylineTo' - * at org.apache.poi.xdgf.util.ObjectFactory.load - * at org.apache.poi.xdgf.usermodel.section.geometry.GeometryRowFactory.load - */ @Test - void testPolylineTo() throws IOException { - XmlVisioDocument document; - try (InputStream is = SAMPLES.openResourceAsStream("60973.vsdx")) { - document = new XmlVisioDocument(is); - } - try (XDGFVisioExtractor extractor = new XDGFVisioExtractor(document)) { - String text = extractor.getText(); - assertContains(text, "42 U"); - assertContains(text, "Access VLANS"); + void testInputStreamNotClosedWhenOptionUsed() throws IOException { + try (TrackingInputStream stream = new TrackingInputStream( + SAMPLES.openResourceAsStream("test_text_extraction.vsdx"))) { + try (XmlVisioDocument xmlVisioDocument = new XmlVisioDocument(stream, false)) { + assertFalse(xmlVisioDocument.getPages().isEmpty()); + } + assertFalse(stream.isClosed(), "stream was not closed?"); } } - @Test - void testGithub260() throws IOException { - XmlVisioDocument document; - try (InputStream is = SAMPLES.openResourceAsStream("github260.vsdx")) { - document = new XmlVisioDocument(is); - } - try (XDGFVisioExtractor extractor = new XDGFVisioExtractor(document)) { - String text = extractor.getText(); - assertContains(text, "Arrive at hotel"); - } - } } --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@poi.apache.org For additional commands, e-mail: commits-h...@poi.apache.org