diff --git a/src/test/java/org/apache/commons/math/analysis/function/StepFunctionTest.java b/src/test/java/org/apache/commons/math/analysis/function/StepFunctionTest.java index e236dbd0b..6d63a2c84 100644 --- a/src/test/java/org/apache/commons/math/analysis/function/StepFunctionTest.java +++ b/src/test/java/org/apache/commons/math/analysis/function/StepFunctionTest.java @@ -78,4 +78,18 @@ public class StepFunctionTest { Assert.assertEquals(51.2, f.value(30), EPS); Assert.assertEquals(51.2, f.value(Double.POSITIVE_INFINITY), EPS); } + + @Test + public void testHeaviside() { + final UnivariateRealFunction h = new StepFunction(new double[] {-1, 0}, + new double[] {0, 1}); + + Assert.assertEquals(0, h.value(Double.NEGATIVE_INFINITY), 0); + Assert.assertEquals(0, h.value(-Double.MAX_VALUE), 0); + Assert.assertEquals(0, h.value(-2), 0); + Assert.assertEquals(0, h.value(-Double.MIN_VALUE), 0); + Assert.assertEquals(1, h.value(0), 0); + Assert.assertEquals(1, h.value(2), 0); + Assert.assertEquals(1, h.value(Double.POSITIVE_INFINITY), 0); + } }