You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@poi.apache.org by ce...@apache.org on 2015/01/09 17:52:24 UTC
svn commit: r1650598 - in /poi/trunk/src:
ooxml/java/org/apache/poi/openxml4j/opc/PackagePart.java
ooxml/java/org/apache/poi/xssf/streaming/SXSSFSheet.java
testcases/org/apache/poi/ss/formula/TestWorkbookEvaluator.java
Author: centic
Date: Fri Jan 9 16:52:23 2015
New Revision: 1650598
URL: http://svn.apache.org/r1650598
Log:
Fix Eclipse warnings, provide better error message and adjust javadoc slightly
Modified:
poi/trunk/src/ooxml/java/org/apache/poi/openxml4j/opc/PackagePart.java
poi/trunk/src/ooxml/java/org/apache/poi/xssf/streaming/SXSSFSheet.java
poi/trunk/src/testcases/org/apache/poi/ss/formula/TestWorkbookEvaluator.java
Modified: poi/trunk/src/ooxml/java/org/apache/poi/openxml4j/opc/PackagePart.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/openxml4j/opc/PackagePart.java?rev=1650598&r1=1650597&r2=1650598&view=diff
==============================================================================
--- poi/trunk/src/ooxml/java/org/apache/poi/openxml4j/opc/PackagePart.java (original)
+++ poi/trunk/src/ooxml/java/org/apache/poi/openxml4j/opc/PackagePart.java Fri Jan 9 16:52:23 2015
@@ -168,7 +168,7 @@ public abstract class PackagePart implem
public PackageRelationship addExternalRelationship(String target,
String relationshipType, String id) {
if (target == null) {
- throw new IllegalArgumentException("target");
+ throw new IllegalArgumentException("target is null for type " + relationshipType);
}
if (relationshipType == null) {
throw new IllegalArgumentException("relationshipType");
Modified: poi/trunk/src/ooxml/java/org/apache/poi/xssf/streaming/SXSSFSheet.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xssf/streaming/SXSSFSheet.java?rev=1650598&r1=1650597&r2=1650598&view=diff
==============================================================================
--- poi/trunk/src/ooxml/java/org/apache/poi/xssf/streaming/SXSSFSheet.java (original)
+++ poi/trunk/src/ooxml/java/org/apache/poi/xssf/streaming/SXSSFSheet.java Fri Jan 9 16:52:23 2015
@@ -98,6 +98,8 @@ public class SXSSFSheet implements Sheet
*
* @param rownum row number
* @return high level Row object representing a row in the sheet
+ * @throws IllegalArgumentException If the max. number of rows is exceeded or
+ * a rownum is provided where the row is already flushed to disk.
* @see #removeRow(Row)
*/
public Row createRow(int rownum)
Modified: poi/trunk/src/testcases/org/apache/poi/ss/formula/TestWorkbookEvaluator.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/testcases/org/apache/poi/ss/formula/TestWorkbookEvaluator.java?rev=1650598&r1=1650597&r2=1650598&view=diff
==============================================================================
--- poi/trunk/src/testcases/org/apache/poi/ss/formula/TestWorkbookEvaluator.java (original)
+++ poi/trunk/src/testcases/org/apache/poi/ss/formula/TestWorkbookEvaluator.java Fri Jan 9 16:52:23 2015
@@ -17,6 +17,8 @@
package org.apache.poi.ss.formula;
+import java.io.IOException;
+
import junit.framework.AssertionFailedError;
import junit.framework.TestCase;
@@ -213,37 +215,43 @@ public class TestWorkbookEvaluator exten
/**
* Functions like IF, INDIRECT, INDEX, OFFSET etc can return AreaEvals which
* should be dereferenced by the evaluator
+ * @throws IOException
*/
- public void testResultOutsideRange() {
+ public void testResultOutsideRange() throws IOException {
Workbook wb = new HSSFWorkbook();
- Cell cell = wb.createSheet("Sheet1").createRow(0).createCell(0);
- cell.setCellFormula("D2:D5"); // IF(TRUE,D2:D5,D2) or OFFSET(D2:D5,0,0) would work too
- FormulaEvaluator fe = wb.getCreationHelper().createFormulaEvaluator();
- CellValue cv;
try {
- cv = fe.evaluate(cell);
- } catch (IllegalArgumentException e) {
- if ("Specified row index (0) is outside the allowed range (1..4)".equals(e.getMessage())) {
- throw new AssertionFailedError("Identified bug in result dereferencing");
- }
- throw new RuntimeException(e);
+ Cell cell = wb.createSheet("Sheet1").createRow(0).createCell(0);
+ cell.setCellFormula("D2:D5"); // IF(TRUE,D2:D5,D2) or OFFSET(D2:D5,0,0) would work too
+ FormulaEvaluator fe = wb.getCreationHelper().createFormulaEvaluator();
+ CellValue cv;
+ try {
+ cv = fe.evaluate(cell);
+ } catch (IllegalArgumentException e) {
+ if ("Specified row index (0) is outside the allowed range (1..4)".equals(e.getMessage())) {
+ throw new AssertionFailedError("Identified bug in result dereferencing");
+ }
+ throw new RuntimeException(e);
+ }
+ assertEquals(Cell.CELL_TYPE_ERROR, cv.getCellType());
+ assertEquals(ErrorConstants.ERROR_VALUE, cv.getErrorValue());
+
+ // verify circular refs are still detected properly
+ fe.clearAllCachedResultValues();
+ cell.setCellFormula("OFFSET(A1,0,0)");
+ cv = fe.evaluate(cell);
+ assertEquals(Cell.CELL_TYPE_ERROR, cv.getCellType());
+ assertEquals(ErrorEval.CIRCULAR_REF_ERROR.getErrorCode(), cv.getErrorValue());
+ } finally {
+ wb.close();
}
- assertEquals(Cell.CELL_TYPE_ERROR, cv.getCellType());
- assertEquals(ErrorConstants.ERROR_VALUE, cv.getErrorValue());
-
- // verify circular refs are still detected properly
- fe.clearAllCachedResultValues();
- cell.setCellFormula("OFFSET(A1,0,0)");
- cv = fe.evaluate(cell);
- assertEquals(Cell.CELL_TYPE_ERROR, cv.getCellType());
- assertEquals(ErrorEval.CIRCULAR_REF_ERROR.getErrorCode(), cv.getErrorValue());
}
/**
* formulas with defined names.
+ * @throws IOException
*/
- public void testNamesInFormulas() {
+ public void testNamesInFormulas() throws IOException {
Workbook wb = new HSSFWorkbook();
Sheet sheet = wb.createSheet("Sheet1");
@@ -279,6 +287,8 @@ public class TestWorkbookEvaluator exten
assertEquals(10.0, fe.evaluate(row1.getCell(2)).getNumberValue());
assertEquals(15.0, fe.evaluate(row2.getCell(2)).getNumberValue());
assertEquals(28.14, fe.evaluate(row3.getCell(2)).getNumberValue());
+
+ wb.close();
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@poi.apache.org
For additional commands, e-mail: commits-help@poi.apache.org