Author: centic
Date: Fri Aug 23 18:56:11 2013
New Revision: 1516981
URL: http://svn.apache.org/r1516981
Log:
Add testcase which tries to reproduce Bug 48495, but seems to be fixed
now.
Added:
poi/trunk/test-data/spreadsheet/48495.xlsx
Modified:
poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFWorkbook.java
poi/trunk/src/testcases/org/apache/poi/hssf/usermodel/TestHSSFWorkbook.java
poi/trunk/src/testcases/org/apache/poi/ss/usermodel/BaseTestWorkbook.java
Modified:
poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFWorkbook.java
URL:
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFWorkbook.java?rev=1516981&r1=1516980&r2=1516981&view=diff
==============================================================================
---
poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFWorkbook.java
(original)
+++
poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFWorkbook.java
Fri Aug 23 18:56:11 2013
@@ -37,7 +37,9 @@ import org.apache.poi.ss.usermodel.CellS
import org.apache.poi.ss.usermodel.Font;
import org.apache.poi.ss.usermodel.IndexedColors;
import org.apache.poi.ss.usermodel.RichTextString;
+import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
+import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.util.TempFile;
import org.apache.poi.xssf.XSSFITestDataProvider;
import org.apache.poi.xssf.XSSFTestDataSamples;
@@ -494,4 +496,36 @@ public final class TestXSSFWorkbook exte
assertEquals("hello world",
workbook.getSheetAt(0).getRow(0).getCell(0).getStringCellValue());
assertEquals(2048, workbook.getSheetAt(0).getColumnWidth(0));
// <-works
}
+
+
+ public void testBug48495() {
+ try {
+ Workbook wb =
XSSFTestDataSamples.openSampleWorkbook("48495.xlsx");
+
+ assertSheetOrder(wb, "Sheet1");
+
+ Sheet sheet = wb.getSheetAt(0);
+ sheet.shiftRows(2, sheet.getLastRowNum(), 1, true,
false);
+ Row newRow = sheet.getRow(2);
+ if (newRow == null) newRow = sheet.createRow(2);
+ newRow.createCell(0).setCellValue(" Another Header");
+ wb.cloneSheet(0);
+
+ assertSheetOrder(wb, "Sheet1", "Sheet1 (2)");
+
+ // FileOutputStream fileOut = new
FileOutputStream("/tmp/bug48495.xlsx");
+// try {
+// wb.write(fileOut);
+// } finally {
+// fileOut.close();
+// }
+
+ Workbook read =
XSSFTestDataSamples.writeOutAndReadBack(wb);
+ assertNotNull(read);
+ assertSheetOrder(read, "Sheet1", "Sheet1 (2)");
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ System.out.println("Done");
+ }
}
Modified:
poi/trunk/src/testcases/org/apache/poi/hssf/usermodel/TestHSSFWorkbook.java
URL:
http://svn.apache.org/viewvc/poi/trunk/src/testcases/org/apache/poi/hssf/usermodel/TestHSSFWorkbook.java?rev=1516981&r1=1516980&r2=1516981&view=diff
==============================================================================
--- poi/trunk/src/testcases/org/apache/poi/hssf/usermodel/TestHSSFWorkbook.java
(original)
+++ poi/trunk/src/testcases/org/apache/poi/hssf/usermodel/TestHSSFWorkbook.java
Fri Aug 23 18:56:11 2013
@@ -965,17 +965,4 @@ public final class TestHSSFWorkbook exte
HSSFWorkbook read = HSSFTestDataSamples.writeOutAndReadBack(wb);
assertSheetOrder(read, "Invoice", "Deferred", "Received",
"Digest");
}
-
- private void assertSheetOrder(HSSFWorkbook wb, String... sheets) {
- StringBuilder sheetNames = new StringBuilder();
- for(int i = 0;i < wb.getNumberOfSheets();i++) {
-
sheetNames.append(wb.getSheetAt(i).getSheetName()).append(",");
- }
- assertEquals("Had: " + sheetNames.toString(),
- sheets.length, wb.getNumberOfSheets());
- for(int i = 0;i < wb.getNumberOfSheets();i++) {
- assertEquals("Had: " + sheetNames.toString(),
- sheets[i],
wb.getSheetAt(i).getSheetName());
- }
- }
}
Modified:
poi/trunk/src/testcases/org/apache/poi/ss/usermodel/BaseTestWorkbook.java
URL:
http://svn.apache.org/viewvc/poi/trunk/src/testcases/org/apache/poi/ss/usermodel/BaseTestWorkbook.java?rev=1516981&r1=1516980&r2=1516981&view=diff
==============================================================================
--- poi/trunk/src/testcases/org/apache/poi/ss/usermodel/BaseTestWorkbook.java
(original)
+++ poi/trunk/src/testcases/org/apache/poi/ss/usermodel/BaseTestWorkbook.java
Fri Aug 23 18:56:11 2013
@@ -604,4 +604,17 @@ public abstract class BaseTestWorkbook e
assertEquals(cellB.getStringCellValue(),
evaluator.evaluate(cellA).getStringValue());
}
}
+
+ protected void assertSheetOrder(Workbook wb, String... sheets) {
+ StringBuilder sheetNames = new StringBuilder();
+ for(int i = 0;i < wb.getNumberOfSheets();i++) {
+
sheetNames.append(wb.getSheetAt(i).getSheetName()).append(",");
+ }
+ assertEquals("Had: " + sheetNames.toString(),
+ sheets.length, wb.getNumberOfSheets());
+ for(int i = 0;i < wb.getNumberOfSheets();i++) {
+ assertEquals("Had: " + sheetNames.toString(),
+ sheets[i],
wb.getSheetAt(i).getSheetName());
+ }
+ }
}
Added: poi/trunk/test-data/spreadsheet/48495.xlsx
URL:
http://svn.apache.org/viewvc/poi/trunk/test-data/spreadsheet/48495.xlsx?rev=1516981&view=auto
==============================================================================
Files poi/trunk/test-data/spreadsheet/48495.xlsx (added) and
poi/trunk/test-data/spreadsheet/48495.xlsx Fri Aug 23 18:56:11 2013 differ
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]