aboutsummaryrefslogtreecommitdiffstats
path: root/src/testcases/org/apache/poi/ss/formula
diff options
context:
space:
mode:
authorPJ Fanning <fanningpj@apache.org>2020-10-20 16:07:10 +0000
committerPJ Fanning <fanningpj@apache.org>2020-10-20 16:07:10 +0000
commitdd9f132c232c24d939adba5065280fbba0e4ed42 (patch)
treef0d75d29cfba803c33bf8c4d4ef0b4dc322874b1 /src/testcases/org/apache/poi/ss/formula
parentccad1fc86e51f39141d304b7cc5980f7d50dbd7f (diff)
downloadpoi-dd9f132c232c24d939adba5065280fbba0e4ed42.tar.gz
poi-dd9f132c232c24d939adba5065280fbba0e4ed42.zip
[github-193] Change TRUNC implementation to use MathX. Thanks to Jacob Harris. This closes #193
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1882706 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'src/testcases/org/apache/poi/ss/formula')
-rw-r--r--src/testcases/org/apache/poi/ss/formula/functions/TestTrunc.java15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/testcases/org/apache/poi/ss/formula/functions/TestTrunc.java b/src/testcases/org/apache/poi/ss/formula/functions/TestTrunc.java
index a501435616..c8f4d90f5f 100644
--- a/src/testcases/org/apache/poi/ss/formula/functions/TestTrunc.java
+++ b/src/testcases/org/apache/poi/ss/formula/functions/TestTrunc.java
@@ -58,6 +58,21 @@ public final class TestTrunc extends BaseTestNumeric {
}
@Test
+ public void testTruncWithProblematicDecimalNumber() {
+ ValueEval[] args = { new NumberEval(0.29), new NumberEval(2) };
+ ValueEval result = NumericFunction.TRUNC.evaluate(args, -1, (short)-1);
+ assertEquals("TRUNC", (new NumberEval(0.29d)).getNumberValue(), ((NumberEval)result).getNumberValue());
+ }
+
+ @Test
+ public void testTruncWithProblematicCalculationResult() {
+
+ ValueEval[] args = { new NumberEval(21.624d / 24d + .009d), new NumberEval(2) };
+ ValueEval result = NumericFunction.TRUNC.evaluate(args, -1, (short)-1);
+ assertEquals("TRUNC", (new NumberEval(0.91d)).getNumberValue(), ((NumberEval)result).getNumberValue());
+ }
+
+ @Test
public void testTruncWithDecimalNumberOneArg() {
ValueEval[] args = { new NumberEval(2.612777) };
ValueEval result = NumericFunction.TRUNC.evaluate(args, -1, (short)-1);