From 2804197bdb43a962251073e10265808fda0d9521 Mon Sep 17 00:00:00 2001 From: Javen O'Neal Date: Mon, 20 Jun 2016 01:44:44 +0000 Subject: [PATCH] =?UTF-8?q?bug=2056454:=20add=20disabled=20unit=20test=20b?= =?UTF-8?q?ased=20on=20J=C3=B6rg=20Selbach's=20test=20case=20showing=20shi?= =?UTF-8?q?ftRows=20incorrectly=20handles=20merged=20regions?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1749246 13f79535-47bb-0310-9956-ffa450edef68 --- .../ss/usermodel/BaseTestSheetShiftRows.java | 33 +++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/src/testcases/org/apache/poi/ss/usermodel/BaseTestSheetShiftRows.java b/src/testcases/org/apache/poi/ss/usermodel/BaseTestSheetShiftRows.java index 7846c256a..7709552e2 100644 --- a/src/testcases/org/apache/poi/ss/usermodel/BaseTestSheetShiftRows.java +++ b/src/testcases/org/apache/poi/ss/usermodel/BaseTestSheetShiftRows.java @@ -602,6 +602,39 @@ public abstract class BaseTestSheetShiftRows { read.close(); } + // bug 56454 + @Ignore + @Test + public void shiftRowsWithMergedRegionsThatDoNotContainColumnZero() throws IOException { + Workbook wb = _testDataProvider.createWorkbook(); + Sheet sheet = wb.createSheet("test"); + + // populate sheet cells + for (int i = 0; i < 10; i++) { + Row row = sheet.createRow(i); + for (int j = 0; j < 12; j++) { + Cell cell = row.createCell(j); + cell.setCellValue(i + "x" + j); + } + } + + CellRangeAddress A4_B7 = new CellRangeAddress(3, 6, 0, 1); + CellRangeAddress C5_D7 = new CellRangeAddress(4, 6, 2, 3); + + sheet.addMergedRegion(A4_B7); + sheet.addMergedRegion(C5_D7); + + // A4:B7 will elongate vertically + // C5:D7 will be shifted down with same size + sheet.shiftRows(4, sheet.getLastRowNum(), 1); + + assertEquals(2, sheet.getNumMergedRegions()); + assertEquals(CellRangeAddress.valueOf("A4:B8"), sheet.getMergedRegion(0)); + assertEquals(CellRangeAddress.valueOf("C5:D8"), sheet.getMergedRegion(1)); + + wb.close(); + } + private void createHyperlink(CreationHelper helper, Cell cell, int linkType, String ref) { cell.setCellValue(ref); Hyperlink link = helper.createHyperlink(linkType);