mirror of https://github.com/apache/poi.git
Bug 59733: Narrow down testcase some more, after the first shift, removing the first row is sufficient to trigger the problem
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1752996 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
73217cecae
commit
9c3ab2d1b3
|
@ -76,12 +76,11 @@ public final class TestXSSFSheetShiftRows extends BaseTestSheetShiftRows {
|
||||||
// when shifted by less than -1 negative amount (try -2)
|
// when shifted by less than -1 negative amount (try -2)
|
||||||
testSheet.shiftRows(3, 3, -2);
|
testSheet.shiftRows(3, 3, -2);
|
||||||
|
|
||||||
Row newRow = null; Cell newCell = null;
|
// 2) attempt to create a new row IN PLACE of a removed row by a negative shift causes corrupted
|
||||||
// 2) attempt to create a new row IN PLACE of a removed row by a negative shift causes corrupted
|
|
||||||
// xlsx file with unreadable data in the negative shifted row.
|
// xlsx file with unreadable data in the negative shifted row.
|
||||||
// NOTE it's ok to create any other row.
|
// NOTE it's ok to create any other row.
|
||||||
newRow = testSheet.createRow(3);
|
Row newRow = testSheet.createRow(3);
|
||||||
newCell = newRow.createCell(0);
|
Cell newCell = newRow.createCell(0);
|
||||||
newCell.setCellValue("new Cell in row "+newRow.getRowNum());
|
newCell.setCellValue("new Cell in row "+newRow.getRowNum());
|
||||||
|
|
||||||
// 3) once a negative shift has been made any attempt to shift another group of rows
|
// 3) once a negative shift has been made any attempt to shift another group of rows
|
||||||
|
@ -117,6 +116,7 @@ public final class TestXSSFSheetShiftRows extends BaseTestSheetShiftRows {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
Cell readCell = readRow.getCell(0);
|
Cell readCell = readRow.getCell(0);
|
||||||
|
//noinspection deprecation
|
||||||
if(readCell.getCellTypeEnum() == CellType.NUMERIC) {
|
if(readCell.getCellTypeEnum() == CellType.NUMERIC) {
|
||||||
assertEquals(expect, Double.toString(readCell.getNumericCellValue()));
|
assertEquals(expect, Double.toString(readCell.getNumericCellValue()));
|
||||||
} else {
|
} else {
|
||||||
|
@ -369,12 +369,12 @@ public final class TestXSSFSheetShiftRows extends BaseTestSheetShiftRows {
|
||||||
wb.close();
|
wb.close();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Ignore
|
@Ignore("Bug 59733 - shiftRows() causes org.apache.xmlbeans.impl.values.XmlValueDisconnectedException")
|
||||||
@Test
|
@Test
|
||||||
public void bug59733() throws IOException {
|
public void bug59733() throws IOException {
|
||||||
Workbook workbook = new XSSFWorkbook();
|
Workbook workbook = new XSSFWorkbook();
|
||||||
Sheet sheet = workbook.createSheet();
|
Sheet sheet = workbook.createSheet();
|
||||||
for (int r=0; r<=3; r++) {
|
for (int r=0; r<4; r++) {
|
||||||
sheet.createRow(r);
|
sheet.createRow(r);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -389,12 +389,11 @@ public final class TestXSSFSheetShiftRows extends BaseTestSheetShiftRows {
|
||||||
at org.apache.xmlbeans.impl.values.XmlObjectBase.check_orphaned(XmlObjectBase.java:1258)
|
at org.apache.xmlbeans.impl.values.XmlObjectBase.check_orphaned(XmlObjectBase.java:1258)
|
||||||
at org.openxmlformats.schemas.spreadsheetml.x2006.main.impl.CTRowImpl.getR(Unknown Source)
|
at org.openxmlformats.schemas.spreadsheetml.x2006.main.impl.CTRowImpl.getR(Unknown Source)
|
||||||
at org.apache.poi.xssf.usermodel.XSSFRow.getRowNum(XSSFRow.java:363)
|
at org.apache.poi.xssf.usermodel.XSSFRow.getRowNum(XSSFRow.java:363)
|
||||||
at org.apache.poi.xssf.usermodel.XSSFSheet.shiftRows(XSSFSheet.java:2926)
|
|
||||||
at org.apache.poi.xssf.usermodel.XSSFSheet.shiftRows(XSSFSheet.java:2901)
|
|
||||||
at org.apache.poi.xssf.usermodel.TestXSSFSheetShiftRows.bug59733(TestXSSFSheetShiftRows.java:393)
|
at org.apache.poi.xssf.usermodel.TestXSSFSheetShiftRows.bug59733(TestXSSFSheetShiftRows.java:393)
|
||||||
*/
|
*/
|
||||||
sheet.shiftRows(3, 3, -3);
|
sheet.removeRow(sheet.getRow(0));
|
||||||
|
assertEquals(1, sheet.getRow(1).getRowNum());
|
||||||
|
|
||||||
workbook.close();
|
workbook.close();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue