]> source.dussan.org Git - poi.git/commitdiff
renamed excelant test class to avoid collision with poi-examples when all classes...
authorYegor Kozlov <yegor@apache.org>
Thu, 21 Jul 2011 11:55:05 +0000 (11:55 +0000)
committerYegor Kozlov <yegor@apache.org>
Thu, 21 Jul 2011 11:55:05 +0000 (11:55 +0000)
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1149134 13f79535-47bb-0310-9956-ffa450edef68

src/excelant/testcases/org/apache/poi/ss/examples/formula/CalculateMortgage.java [deleted file]
src/excelant/testcases/org/apache/poi/ss/examples/formula/CalculateMortgageFunction.java [new file with mode: 0755]
src/excelant/testcases/org/apache/poi/ss/excelant/util/TestExcelAntWorkbookUtil.java
src/ooxml/testcases/log4j.properties [deleted file]

diff --git a/src/excelant/testcases/org/apache/poi/ss/examples/formula/CalculateMortgage.java b/src/excelant/testcases/org/apache/poi/ss/examples/formula/CalculateMortgage.java
deleted file mode 100755 (executable)
index 4b9a325..0000000
+++ /dev/null
@@ -1,93 +0,0 @@
-/* ====================================================================
-   Licensed to the Apache Software Foundation (ASF) under one or more
-   contributor license agreements.  See the NOTICE file distributed with
-   this work for additional information regarding copyright ownership.
-   The ASF licenses this file to You under the Apache License, Version 2.0
-   (the "License"); you may not use this file except in compliance with
-   the License.  You may obtain a copy of the License at
-
-       http://www.apache.org/licenses/LICENSE-2.0
-
-   Unless required by applicable law or agreed to in writing, software
-   distributed under the License is distributed on an "AS IS" BASIS,
-   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-   See the License for the specific language governing permissions and
-   limitations under the License.
-==================================================================== */
-package org.apache.poi.ss.examples.formula;
-
-import org.apache.poi.ss.formula.OperationEvaluationContext ;
-import org.apache.poi.ss.formula.eval.ErrorEval ;
-import org.apache.poi.ss.formula.eval.EvaluationException ;
-import org.apache.poi.ss.formula.eval.NumberEval ;
-import org.apache.poi.ss.formula.eval.OperandResolver ;
-import org.apache.poi.ss.formula.eval.ValueEval ;
-import org.apache.poi.ss.formula.functions.FreeRefFunction ;
-
-/**
- * A simple user-defined function to calculate principal and interest.
- * 
- * @author Jon Svede ( jon [at] loquatic [dot] com )
- * @author Brian Bush ( brian [dot] bush [at] nrel [dot] gov )
- *
- */
-public class CalculateMortgage implements FreeRefFunction {
-
-    public ValueEval evaluate( ValueEval[] args, OperationEvaluationContext ec ) {
-        
-        // verify that we have enough data
-        if (args.length != 3) {  
-            return ErrorEval.VALUE_INVALID;
-        }
-
-        // declare doubles for values
-        double principal, rate, years,  result;
-        try {
-            // extract values as ValueEval
-            ValueEval v1 = OperandResolver.getSingleValue( args[0], 
-                                                           ec.getRowIndex(), 
-                                                           ec.getColumnIndex() ) ;
-            ValueEval v2 = OperandResolver.getSingleValue( args[1], 
-                                                           ec.getRowIndex(), 
-                                                           ec.getColumnIndex() ) ;
-            ValueEval v3 = OperandResolver.getSingleValue( args[2], 
-                                                           ec.getRowIndex(), 
-                                                           ec.getColumnIndex() ) ;
-
-            // get data as doubles
-            principal  = OperandResolver.coerceValueToDouble( v1 ) ; 
-            rate  = OperandResolver.coerceValueToDouble( v2 ) ;
-            years = OperandResolver.coerceValueToDouble( v3 ) ;
-            
-            result = calculateMortgagePayment( principal, rate, years ) ;
-            System.out.println( "Result = " + result ) ;
-
-            checkValue(result);
-            
-        } catch (EvaluationException e) {
-            return e.getErrorEval();
-        }
-
-        return new NumberEval( result ) ;
-    }
-    
-    public double calculateMortgagePayment( double p, double r, double y ) {
-        double i = r / 12 ;
-        double n = y * 12 ;
-        
-        double principalAndInterest = 
-             p * (( i * Math.pow((1 + i),n ) ) / ( Math.pow((1 + i),n) - 1))  ;
-        
-        return principalAndInterest ;
-    }
-    /**
-     * Excel does not support infinities and NaNs, rather, it gives a #NUM! error in these cases
-     *
-     * @throws EvaluationException (#NUM!) if <tt>result</tt> is <tt>NaN</> or <tt>Infinity</tt>
-     */
-     private void checkValue(double result) throws EvaluationException {
-         if (Double.isNaN(result) || Double.isInfinite(result)) {
-             throw new EvaluationException(ErrorEval.NUM_ERROR);
-         }
-     }    
-}
diff --git a/src/excelant/testcases/org/apache/poi/ss/examples/formula/CalculateMortgageFunction.java b/src/excelant/testcases/org/apache/poi/ss/examples/formula/CalculateMortgageFunction.java
new file mode 100755 (executable)
index 0000000..83ac61e
--- /dev/null
@@ -0,0 +1,95 @@
+/* ====================================================================
+   Licensed to the Apache Software Foundation (ASF) under one or more
+   contributor license agreements.  See the NOTICE file distributed with
+   this work for additional information regarding copyright ownership.
+   The ASF licenses this file to You under the Apache License, Version 2.0
+   (the "License"); you may not use this file except in compliance with
+   the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+==================================================================== */
+package org.apache.poi.ss.examples.formula;
+
+import org.apache.poi.ss.formula.OperationEvaluationContext ;
+import org.apache.poi.ss.formula.eval.ErrorEval ;
+import org.apache.poi.ss.formula.eval.EvaluationException ;
+import org.apache.poi.ss.formula.eval.NumberEval ;
+import org.apache.poi.ss.formula.eval.OperandResolver ;
+import org.apache.poi.ss.formula.eval.ValueEval ;
+import org.apache.poi.ss.formula.functions.FreeRefFunction ;
+
+/**
+ * A simple user-defined function to calculate principal and interest.
+ *
+ * Used by {@link org.apache.poi.ss.excelant.util.TestExcelAntWorkbookUtil}.
+ * 
+ * @author Jon Svede ( jon [at] loquatic [dot] com )
+ * @author Brian Bush ( brian [dot] bush [at] nrel [dot] gov )
+ *
+ */
+public class CalculateMortgageFunction implements FreeRefFunction {
+
+    public ValueEval evaluate( ValueEval[] args, OperationEvaluationContext ec ) {
+        
+        // verify that we have enough data
+        if (args.length != 3) {  
+            return ErrorEval.VALUE_INVALID;
+        }
+
+        // declare doubles for values
+        double principal, rate, years,  result;
+        try {
+            // extract values as ValueEval
+            ValueEval v1 = OperandResolver.getSingleValue( args[0], 
+                                                           ec.getRowIndex(), 
+                                                           ec.getColumnIndex() ) ;
+            ValueEval v2 = OperandResolver.getSingleValue( args[1], 
+                                                           ec.getRowIndex(), 
+                                                           ec.getColumnIndex() ) ;
+            ValueEval v3 = OperandResolver.getSingleValue( args[2], 
+                                                           ec.getRowIndex(), 
+                                                           ec.getColumnIndex() ) ;
+
+            // get data as doubles
+            principal  = OperandResolver.coerceValueToDouble( v1 ) ; 
+            rate  = OperandResolver.coerceValueToDouble( v2 ) ;
+            years = OperandResolver.coerceValueToDouble( v3 ) ;
+            
+            result = calculateMortgagePayment( principal, rate, years ) ;
+            System.out.println( "Result = " + result ) ;
+
+            checkValue(result);
+            
+        } catch (EvaluationException e) {
+            return e.getErrorEval();
+        }
+
+        return new NumberEval( result ) ;
+    }
+    
+    public double calculateMortgagePayment( double p, double r, double y ) {
+        double i = r / 12 ;
+        double n = y * 12 ;
+        
+        double principalAndInterest = 
+             p * (( i * Math.pow((1 + i),n ) ) / ( Math.pow((1 + i),n) - 1))  ;
+        
+        return principalAndInterest ;
+    }
+    /**
+     * Excel does not support infinities and NaNs, rather, it gives a #NUM! error in these cases
+     *
+     * @throws EvaluationException (#NUM!) if <tt>result</tt> is <tt>NaN</> or <tt>Infinity</tt>
+     */
+     private void checkValue(double result) throws EvaluationException {
+         if (Double.isNaN(result) || Double.isInfinite(result)) {
+             throw new EvaluationException(ErrorEval.NUM_ERROR);
+         }
+     }    
+}
index 5b0d3e8027d7b1d80f855ba278c0978e0936f4b7..ad95c4307b3c883432dd1c547086d3c39d996b95 100755 (executable)
@@ -20,7 +20,7 @@ import java.util.ArrayList;
 
 import junit.framework.TestCase;
 
-import org.apache.poi.ss.examples.formula.CalculateMortgage;
+import org.apache.poi.ss.examples.formula.CalculateMortgageFunction;
 import org.apache.poi.ss.formula.udf.UDFFinder;
 import org.apache.poi.ss.usermodel.FormulaEvaluator;
 import org.apache.poi.ss.usermodel.Workbook;
@@ -50,7 +50,7 @@ public class TestExcelAntWorkbookUtil extends TestCase {
 
                assertNotNull( fixture ) ;
                
-               fixture.addFunction("h2_ZFactor", new CalculateMortgage() ) ;
+               fixture.addFunction("h2_ZFactor", new CalculateMortgageFunction() ) ;
                
                UDFFinder functions = fixture.getFunctions() ;
                
diff --git a/src/ooxml/testcases/log4j.properties b/src/ooxml/testcases/log4j.properties
deleted file mode 100644 (file)
index 8479c8d..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-# Licensed to the Apache Software Foundation (ASF) under one or more
-# contributor license agreements.  See the NOTICE file distributed with
-# this work for additional information regarding copyright ownership.
-# The ASF licenses this file to You under the Apache License, Version 2.0
-# (the "License"); you may not use this file except in compliance with
-# the License.  You may obtain a copy of the License at
-#
-#     http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-log4j.debug=false
-
-log4j.rootLogger=INFO,Stdout
-
-log4j.appender.Stdout=org.apache.log4j.ConsoleAppender
-log4j.appender.Stdout.layout=org.apache.log4j.PatternLayout
-log4j.appender.Stdout.layout.conversionPattern=%-5p - %-26.26c{1} - %m\n
-
-log4j.org.apache.poi=DEBUG
\ No newline at end of file