]> source.dussan.org Git - poi.git/commitdiff
Add test to verify that bug 61532 is fixed as far as I see via the changes for bug...
authorDominik Stadler <centic@apache.org>
Tue, 19 Sep 2017 19:19:30 +0000 (19:19 +0000)
committerDominik Stadler <centic@apache.org>
Tue, 19 Sep 2017 19:19:30 +0000 (19:19 +0000)
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1808932 13f79535-47bb-0310-9956-ffa450edef68

src/testcases/org/apache/poi/ss/usermodel/BaseTestFormulaEvaluator.java

index 9600b10d270efac1332df85e3d77da8e4a101ff2..eda716b82cb30468a8d4d91f136e031d227c5b15 100644 (file)
 
 package org.apache.poi.ss.usermodel;
 
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNull;
-import static org.junit.Assert.assertSame;
-import static org.junit.Assert.fail;
-
 import java.io.IOException;
 
 import org.apache.poi.ss.ITestDataProvider;
 import org.junit.Test;
 
+import static org.junit.Assert.*;
+
 /**
  * Common superclass for testing implementation of {@link FormulaEvaluator}
  */
@@ -600,4 +597,31 @@ public abstract class BaseTestFormulaEvaluator {
     private Cell getCell(Sheet sheet, int rowNo, int column) {
         return sheet.getRow(rowNo).getCell(column);
     }
+
+    @Test
+    public void testBug61532() throws IOException {
+        try (Workbook wb = _testDataProvider.createWorkbook()) {
+            final Cell cell = wb.createSheet().createRow(0).createCell(0);
+            cell.setCellFormula("1+2");
+
+            assertEquals(0, (int)cell.getNumericCellValue());
+            assertEquals("1+2", cell.toString());
+
+            FormulaEvaluator eval = wb.getCreationHelper().createFormulaEvaluator();
+
+            CellValue value = eval.evaluate(cell);
+
+            assertEquals(CellType.NUMERIC, value.getCellType());
+            assertEquals(3.0, value.getNumberValue(), 0.01);
+            assertEquals(CellType.FORMULA, cell.getCellType());
+            assertEquals("1+2", cell.getCellFormula());
+            assertEquals("1+2", cell.toString());
+
+            assertNotNull(eval.evaluateInCell(cell));
+
+            assertEquals("3.0", cell.toString());
+            assertEquals(CellType.NUMERIC, cell.getCellType());
+            assertEquals(3.0, cell.getNumericCellValue(), 0.01);
+        }
+    }
 }