]> source.dussan.org Git - poi.git/commitdiff
Add test which reproduces bug 58325, seems the file uses AlternateContent which POI...
authorDominik Stadler <centic@apache.org>
Sat, 2 Jan 2016 21:11:28 +0000 (21:11 +0000)
committerDominik Stadler <centic@apache.org>
Sat, 2 Jan 2016 21:11:28 +0000 (21:11 +0000)
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1722665 13f79535-47bb-0310-9956-ffa450edef68

src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestUnfixedBugs.java
test-data/spreadsheet/58325_db.xlsx [new file with mode: 0644]
test-data/spreadsheet/58325_lt.xlsx [new file with mode: 0644]

index 642c8ffbe12833d7b70ab19809ea0f80207aa5d4..9b6b20e71bd038df3fbaa576b748547e7ae6317f 100644 (file)
@@ -31,6 +31,8 @@ import java.io.OutputStream;
 import java.nio.charset.Charset;\r
 import java.util.Calendar;\r
 import java.util.Date;\r
+import java.util.Iterator;\r
+import java.util.List;\r
 \r
 import org.apache.poi.hssf.HSSFTestDataSamples;\r
 import org.apache.poi.ss.usermodel.Cell;\r
@@ -391,4 +393,40 @@ public final class TestUnfixedBugs {
        assertEquals("Did not have expected contents at rownum " + rowNum, \r
                contents + ".0", cell.toString());\r
    }\r
+\r
+   @Test\r
+   public void test58325_one() {\r
+       check58325(XSSFTestDataSamples.openSampleWorkbook("58325_lt.xlsx"), 1);\r
+   }\r
+\r
+   @Test\r
+   public void test58325_three() {\r
+       check58325(XSSFTestDataSamples.openSampleWorkbook("58325_db.xlsx"), 3);\r
+   }\r
+\r
+   private void check58325(XSSFWorkbook wb, int expectedShapes) {\r
+       XSSFSheet sheet = wb.getSheet("MetasNM001");\r
+       assertNotNull(sheet);\r
+\r
+       StringBuilder str = new StringBuilder();\r
+       str.append("sheet " + sheet.getSheetName() + " - ");\r
+\r
+       XSSFDrawing drawing = sheet.getDrawingPatriarch();\r
+       //drawing = ((XSSFSheet)sheet).createDrawingPatriarch();\r
+\r
+       List<XSSFShape> shapes = drawing.getShapes();\r
+       str.append("drawing.getShapes().size() = " + shapes.size());\r
+       Iterator<XSSFShape> it = shapes.iterator();\r
+       while(it.hasNext()) {           \r
+           XSSFShape shape = it.next();\r
+           str.append(", " + shape.toString());\r
+           str.append(", Col1:"+((XSSFClientAnchor)shape.getAnchor()).getCol1());\r
+           str.append(", Col2:"+((XSSFClientAnchor)shape.getAnchor()).getCol2());\r
+           str.append(", Row1:"+((XSSFClientAnchor)shape.getAnchor()).getRow1());\r
+           str.append(", Row2:"+((XSSFClientAnchor)shape.getAnchor()).getRow2());\r
+       }\r
+       \r
+       assertEquals("Having shapes: " + str, \r
+               expectedShapes, shapes.size());\r
+   }\r
 }\r
diff --git a/test-data/spreadsheet/58325_db.xlsx b/test-data/spreadsheet/58325_db.xlsx
new file mode 100644 (file)
index 0000000..8b85089
Binary files /dev/null and b/test-data/spreadsheet/58325_db.xlsx differ
diff --git a/test-data/spreadsheet/58325_lt.xlsx b/test-data/spreadsheet/58325_lt.xlsx
new file mode 100644 (file)
index 0000000..342ad03
Binary files /dev/null and b/test-data/spreadsheet/58325_lt.xlsx differ