You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@poi.apache.org by ni...@apache.org on 2014/07/17 18:18:40 UTC
svn commit: r1611400 - in /poi/trunk:
src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFBugs.java
src/testcases/org/apache/poi/hssf/usermodel/TestBugs.java
test-data/spreadsheet/56737.xls test-data/spreadsheet/56737.xlsx
Author: nick
Date: Thu Jul 17 16:18:39 2014
New Revision: 1611400
URL: http://svn.apache.org/r1611400
Log:
Add disabled unit tests for bug #56737, which currently fails (differently) for HSSF and XSSF
Added:
poi/trunk/test-data/spreadsheet/56737.xls (with props)
poi/trunk/test-data/spreadsheet/56737.xlsx (with props)
Modified:
poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFBugs.java
poi/trunk/src/testcases/org/apache/poi/hssf/usermodel/TestBugs.java
Modified: poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFBugs.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFBugs.java?rev=1611400&r1=1611399&r2=1611400&view=diff
==============================================================================
--- poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFBugs.java (original)
+++ poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFBugs.java Thu Jul 17 16:18:39 2014
@@ -1653,6 +1653,45 @@ public final class TestXSSFBugs extends
assertEquals("0", formatter.formatCellValue(cell));
}
+ /**
+ * Formulas which reference named ranges, either in other
+ * sheets, or workbook scoped but in other workbooks.
+ * Currently failing with errors like
+ * org.apache.poi.ss.formula.FormulaParseException: Cell reference expected after sheet name at index 9
+ * org.apache.poi.ss.formula.FormulaParseException: Parse error near char 0 '[' in specified formula '[0]!NR_Global_B2'. Expected number, string, or defined name
+ */
+ @Ignore
+ @Test
+ public void bug56737() throws IOException {
+ Workbook wb = XSSFTestDataSamples.openSampleWorkbook("56737.xlsx");
+
+ // Check the named range definitions
+ Name nSheetScope = wb.getName("NR_To_A1");
+ Name nWBScope = wb.getName("NR_Global_B2");
+
+ assertNotNull(nSheetScope);
+ assertNotNull(nWBScope);
+
+ assertEquals("Defines!$A$1", nSheetScope.getRefersToFormula());
+ assertEquals("Defines!$B$2", nWBScope.getRefersToFormula());
+
+ // Check the different kinds of formulas
+ Sheet s = wb.getSheetAt(0);
+ Cell cRefSName = s.getRow(1).getCell(3);
+ Cell cRefWName = s.getRow(2).getCell(3);
+
+ assertEquals("Defines!NR_To_A1", cRefSName.getCellFormula());
+ assertEquals("[0]!NR_Global_B2", cRefWName.getCellFormula());
+
+ // Try to evaluate them
+ FormulaEvaluator eval = wb.getCreationHelper().createFormulaEvaluator();
+ assertEquals("Test A1", eval.evaluate(cRefSName).getStringValue());
+ assertEquals(142, (int)eval.evaluate(cRefWName).getNumberValue());
+
+ // Try to evaluate everything
+ eval.evaluateAll();
+ }
+
private void saveAndReloadReport(Workbook wb, File outFile) throws IOException {
// run some method on the font to verify if it is "disconnected" already
//for(short i = 0;i < 256;i++)
Modified: poi/trunk/src/testcases/org/apache/poi/hssf/usermodel/TestBugs.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/testcases/org/apache/poi/hssf/usermodel/TestBugs.java?rev=1611400&r1=1611399&r2=1611400&view=diff
==============================================================================
--- poi/trunk/src/testcases/org/apache/poi/hssf/usermodel/TestBugs.java (original)
+++ poi/trunk/src/testcases/org/apache/poi/hssf/usermodel/TestBugs.java Thu Jul 17 16:18:39 2014
@@ -67,6 +67,7 @@ import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.CellStyle;
import org.apache.poi.ss.usermodel.DataFormat;
import org.apache.poi.ss.usermodel.DataFormatter;
+import org.apache.poi.ss.usermodel.FormulaEvaluator;
import org.apache.poi.ss.usermodel.Name;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
@@ -2611,4 +2612,42 @@ public final class TestBugs extends Base
wb = HSSFTestDataSamples.writeOutAndReadBack(wb);
assertEquals(0, wb.getNumberOfSheets());
}
+
+ /**
+ * Formulas which reference named ranges, either in other
+ * sheets, or workbook scoped but in other workbooks.
+ * Currently failing with
+ * java.lang.RuntimeException: Unexpected eval class (org.apache.poi.ss.formula.eval.NameXEval)
+ */
+ @Ignore
+ @Test
+ public void bug56737() throws IOException {
+ Workbook wb = openSample("56737.xls");
+
+ // Check the named range definitions
+ Name nSheetScope = wb.getName("NR_To_A1");
+ Name nWBScope = wb.getName("NR_Global_B2");
+
+ assertNotNull(nSheetScope);
+ assertNotNull(nWBScope);
+
+ assertEquals("Defines!$A$1", nSheetScope.getRefersToFormula());
+ assertEquals("Defines!$B$2", nWBScope.getRefersToFormula());
+
+ // Check the different kinds of formulas
+ Sheet s = wb.getSheetAt(0);
+ Cell cRefSName = s.getRow(1).getCell(3);
+ Cell cRefWName = s.getRow(2).getCell(3);
+
+ assertEquals("Defines!NR_To_A1", cRefSName.getCellFormula());
+ assertEquals("'56737.xls'!NR_Global_B2", cRefWName.getCellFormula());
+
+ // Try to evaluate them
+ FormulaEvaluator eval = wb.getCreationHelper().createFormulaEvaluator();
+ assertEquals("Test A1", eval.evaluate(cRefSName).getStringValue());
+ assertEquals(142, (int)eval.evaluate(cRefWName).getNumberValue());
+
+ // Try to evaluate everything
+ eval.evaluateAll();
+ }
}
Added: poi/trunk/test-data/spreadsheet/56737.xls
URL: http://svn.apache.org/viewvc/poi/trunk/test-data/spreadsheet/56737.xls?rev=1611400&view=auto
==============================================================================
Binary file - no diff available.
Propchange: poi/trunk/test-data/spreadsheet/56737.xls
------------------------------------------------------------------------------
svn:mime-type = application/octet-stream
Added: poi/trunk/test-data/spreadsheet/56737.xlsx
URL: http://svn.apache.org/viewvc/poi/trunk/test-data/spreadsheet/56737.xlsx?rev=1611400&view=auto
==============================================================================
Binary file - no diff available.
Propchange: poi/trunk/test-data/spreadsheet/56737.xlsx
------------------------------------------------------------------------------
svn:mime-type = application/octet-stream
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@poi.apache.org
For additional commands, e-mail: commits-help@poi.apache.org