From 85aa74414c04741b85cf2873adf557003148cfa6 Mon Sep 17 00:00:00 2001 From: Dominik Stadler Date: Mon, 21 Apr 2025 08:51:02 +0000 Subject: [PATCH] Add test which populates cells with null string git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1925187 13f79535-47bb-0310-9956-ffa450edef68 --- .../apache/poi/ss/usermodel/BaseTestCell.java | 30 +++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/poi/src/test/java/org/apache/poi/ss/usermodel/BaseTestCell.java b/poi/src/test/java/org/apache/poi/ss/usermodel/BaseTestCell.java index ceef38cd18..e42a662813 100644 --- a/poi/src/test/java/org/apache/poi/ss/usermodel/BaseTestCell.java +++ b/poi/src/test/java/org/apache/poi/ss/usermodel/BaseTestCell.java @@ -1473,6 +1473,36 @@ public abstract class BaseTestCell { verify(cell).setBlank(); } + @Test + protected void setCellNullString() throws IOException { + try (Workbook wb = _testDataProvider.createWorkbook()) { + Cell cell = getInstance(wb); + + cell.setCellValue((String)null); + + // setting string "null" leads to a BLANK cell + assertEquals(CellType.BLANK, cell.getCellType()); + assertEquals("", cell.getStringCellValue()); + assertEquals("", cell.toString()); + + cell.setCellType(CellType.STRING); + + // forcing to string type leads to STRING cell, but still empty strings + assertEquals(CellType.STRING, cell.getCellType()); + assertEquals("", cell.getStringCellValue()); + assertEquals("", cell.toString()); + + try (Workbook wb2 = _testDataProvider.writeOutAndReadBack(wb)) { + // read first sheet, first row, first cell + Cell cellBack = wb2.iterator().next().iterator().next().iterator().next(); + + assertEquals(CellType.STRING, cell.getCellType()); + assertEquals("", cell.getStringCellValue()); + assertEquals("", cell.toString()); + } + } + } + private Cell getInstance(Workbook wb) { return wb.createSheet().createRow(0).createCell(0); }