Unit test to try to reproduce bug #62108 (currenly works though...)
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1824451 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
269ea2617f
commit
24120f228b
@ -3252,4 +3252,45 @@ public final class TestXSSFBugs extends BaseTestBugzillaIssues {
|
|||||||
|
|
||||||
wb.close();
|
wb.close();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Auto column sizing failed when there were loads of fonts with
|
||||||
|
* errors like ArrayIndexOutOfBoundsException: -32765
|
||||||
|
* TODO Get this to actually reproduce the bug...
|
||||||
|
*/
|
||||||
|
@Test
|
||||||
|
public void test62108() throws IOException {
|
||||||
|
XSSFWorkbook wb = new XSSFWorkbook();
|
||||||
|
XSSFSheet sheet = wb.createSheet();
|
||||||
|
XSSFRow row = sheet.createRow(0);
|
||||||
|
|
||||||
|
// Create lots of fonts
|
||||||
|
XSSFDataFormat formats = wb.createDataFormat();
|
||||||
|
XSSFFont[] fonts = new XSSFFont[50000];
|
||||||
|
for (int i=0; i<fonts.length; i++) {
|
||||||
|
XSSFFont font = wb.createFont();
|
||||||
|
font.setFontHeight(i);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Create a moderate number of columns, which use
|
||||||
|
// fonts from the start and end of the font list
|
||||||
|
final int numCols = 125;
|
||||||
|
for (int i=0; i<numCols; i++) {
|
||||||
|
XSSFCellStyle cs = wb.createCellStyle();
|
||||||
|
cs.setDataFormat(formats.getFormat("'Test "+i+"' #,###"));
|
||||||
|
|
||||||
|
XSSFFont font = fonts[i];
|
||||||
|
if (i%2==1) { font = fonts[fonts.length-i]; }
|
||||||
|
cs.setFont(font);
|
||||||
|
|
||||||
|
XSSFCell c = row.createCell(i);
|
||||||
|
c.setCellValue(i);
|
||||||
|
c.setCellStyle(cs);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Do the auto-size
|
||||||
|
for (int i=0; i<numCols; i++) {
|
||||||
|
sheet.autoSizeColumn(i);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user