This is an automated email from the ASF dual-hosted git repository. aherbert pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-statistics.git
commit 877eb70d7ae9b6971b360d46dcfcb16681676a07 Author: aherbert <aherb...@apache.org> AuthorDate: Fri Jul 30 16:44:09 2021 +0100 Add edge case coverage for density --- .../commons/statistics/distribution/GammaDistributionTest.java | 7 +++++++ .../commons/statistics/distribution/LevyDistributionTest.java | 7 +++++++ .../commons/statistics/distribution/WeibullDistributionTest.java | 7 +++++++ 3 files changed, 21 insertions(+) diff --git a/commons-statistics-distribution/src/test/java/org/apache/commons/statistics/distribution/GammaDistributionTest.java b/commons-statistics-distribution/src/test/java/org/apache/commons/statistics/distribution/GammaDistributionTest.java index b7eb220..691d8b1 100644 --- a/commons-statistics-distribution/src/test/java/org/apache/commons/statistics/distribution/GammaDistributionTest.java +++ b/commons-statistics-distribution/src/test/java/org/apache/commons/statistics/distribution/GammaDistributionTest.java @@ -94,6 +94,13 @@ class GammaDistributionTest extends ContinuousDistributionAbstractTest { //-------------------- Additional test cases ------------------------------- @Test + void testDensityAtSupportBounds() { + final GammaDistribution distribution = makeDistribution(); + Assertions.assertEquals(0.0, distribution.density(0)); + Assertions.assertEquals(0.0, distribution.density(Double.POSITIVE_INFINITY)); + } + + @Test void testParameterAccessors() { final GammaDistribution distribution = makeDistribution(); Assertions.assertEquals(4d, distribution.getShape()); diff --git a/commons-statistics-distribution/src/test/java/org/apache/commons/statistics/distribution/LevyDistributionTest.java b/commons-statistics-distribution/src/test/java/org/apache/commons/statistics/distribution/LevyDistributionTest.java index 01cedcb..c85632c 100644 --- a/commons-statistics-distribution/src/test/java/org/apache/commons/statistics/distribution/LevyDistributionTest.java +++ b/commons-statistics-distribution/src/test/java/org/apache/commons/statistics/distribution/LevyDistributionTest.java @@ -87,6 +87,13 @@ class LevyDistributionTest extends ContinuousDistributionAbstractTest { //-------------------- Additional test cases ------------------------------- @Test + void testDensityAtSupportBounds() { + final LevyDistribution distribution = makeDistribution(); + // Below the location + Assertions.assertEquals(0.0, distribution.density(distribution.getLocation() - 1)); + } + + @Test void testParameterAccessors() { final LevyDistribution d = makeDistribution(); Assertions.assertEquals(1.2, d.getLocation()); diff --git a/commons-statistics-distribution/src/test/java/org/apache/commons/statistics/distribution/WeibullDistributionTest.java b/commons-statistics-distribution/src/test/java/org/apache/commons/statistics/distribution/WeibullDistributionTest.java index aa076ba..ee4da66 100644 --- a/commons-statistics-distribution/src/test/java/org/apache/commons/statistics/distribution/WeibullDistributionTest.java +++ b/commons-statistics-distribution/src/test/java/org/apache/commons/statistics/distribution/WeibullDistributionTest.java @@ -84,6 +84,13 @@ class WeibullDistributionTest extends ContinuousDistributionAbstractTest { //-------------------- Additional test cases ------------------------------- @Test + void testDensityAtSupportBounds() { + final WeibullDistribution distribution = makeDistribution(); + Assertions.assertEquals(0.0, distribution.density(0)); + Assertions.assertEquals(0.0, distribution.density(Double.POSITIVE_INFINITY)); + } + + @Test void testInverseCumulativeProbabilitySmallPAccuracy() { final WeibullDistribution dist = new WeibullDistribution(2, 3); final double t = dist.inverseCumulativeProbability(1e-17);