diff options
author | Yegor Kozlov <yegor@apache.org> | 2009-05-30 10:37:08 +0000 |
---|---|---|
committer | Yegor Kozlov <yegor@apache.org> | 2009-05-30 10:37:08 +0000 |
commit | 23ddda6853b8b71d4b542eed52175e11e851f6ad (patch) | |
tree | 8f1ff7ac277d6a43abcc2dbaa1c5353b1d7aa9ea /src/ooxml/testcases/org/apache/poi | |
parent | 3add64632f40190f589d302228d98cd9547db65a (diff) | |
download | poi-23ddda6853b8b71d4b542eed52175e11e851f6ad.tar.gz poi-23ddda6853b8b71d4b542eed52175e11e851f6ad.zip |
Fixed XSSFCell to avoid generating xsi:nil entries in shared string table
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@780228 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'src/ooxml/testcases/org/apache/poi')
-rwxr-xr-x | src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFCell.java | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFCell.java b/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFCell.java index 40a937b110..a5abde4adc 100755 --- a/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFCell.java +++ b/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFCell.java @@ -19,6 +19,7 @@ package org.apache.poi.xssf.usermodel; import org.apache.poi.ss.usermodel.*; import org.apache.poi.xssf.XSSFITestDataProvider; +import org.apache.poi.xssf.model.SharedStringsTable; import org.openxmlformats.schemas.spreadsheetml.x2006.main.STCellType; /** @@ -79,4 +80,30 @@ public final class TestXSSFCell extends BaseTestCell { assertTrue(cell_2.getCTCell().isSetIs()); assertEquals("bar", row.getCell(2).getStringCellValue()); } + + /** + * Bug 47278 - xsi:nil attribute for <t> tag caused Excel 2007 to fail to open workbook + */ + public void test47278() throws Exception { + XSSFWorkbook wb = (XSSFWorkbook)_testDataProvider.createWorkbook(); + XSSFSheet sheet = wb.createSheet(); + XSSFRow row = sheet.createRow(0); + SharedStringsTable sst = wb.getSharedStringSource(); + assertEquals(0, sst.getCount()); + + //case 1. cell.setCellValue(new XSSFRichTextString((String)null)); + XSSFCell cell_0 = row.createCell(0); + XSSFRichTextString str = new XSSFRichTextString((String)null); + assertNull(str.getString()); + cell_0.setCellValue(str); + assertEquals(0, sst.getCount()); + assertEquals(XSSFCell.CELL_TYPE_BLANK, cell_0.getCellType()); + + //case 2. cell.setCellValue((String)null); + XSSFCell cell_1 = row.createCell(1); + cell_1.setCellValue((String)null); + assertEquals(0, sst.getCount()); + assertEquals(XSSFCell.CELL_TYPE_BLANK, cell_1.getCellType()); + } + }
\ No newline at end of file |