You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by ah...@apache.org on 2022/11/21 19:23:16 UTC

[commons-statistics] 03/12: Test method naming conventions

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 7beb9aaa639888d11777dc87d9e3234dbdff78fe
Author: Alex Herbert <ah...@apache.org>
AuthorDate: Mon Nov 21 18:19:20 2022 +0000

    Test method naming conventions
---
 .../HypergeometricDistributionTest.java            |  6 ++--
 .../distribution/ParetoDistributionTest.java       |  7 +++-
 .../distribution/TrapezoidalDistributionTest.java  |  2 +-
 .../distribution/ZipfDistributionTest.java         | 41 ++++++++++++++--------
 4 files changed, 36 insertions(+), 20 deletions(-)

diff --git a/commons-statistics-distribution/src/test/java/org/apache/commons/statistics/distribution/HypergeometricDistributionTest.java b/commons-statistics-distribution/src/test/java/org/apache/commons/statistics/distribution/HypergeometricDistributionTest.java
index 34ecdb6..b5c72c7 100644
--- a/commons-statistics-distribution/src/test/java/org/apache/commons/statistics/distribution/HypergeometricDistributionTest.java
+++ b/commons-statistics-distribution/src/test/java/org/apache/commons/statistics/distribution/HypergeometricDistributionTest.java
@@ -180,7 +180,7 @@ class HypergeometricDistributionTest extends BaseDiscreteDistributionTest {
     }
 
     @Test
-    void testZeroTrial() {
+    void testZeroTrials() {
         final int n = 11; // population
         final int m = 4;  // successes in population
         final int s = 0;  // number of trials
@@ -221,7 +221,7 @@ class HypergeometricDistributionTest extends BaseDiscreteDistributionTest {
     }
 
     @Test
-    void testHighPrecisionCumulativeProbabilities() {
+    void testAdditionalCumulativeProbabilityHighPrecision() {
         // computed using R version 3.4.4
         testCumulativeProbabilityHighPrecision(
             HypergeometricDistribution.of(500, 70, 300),
@@ -231,7 +231,7 @@ class HypergeometricDistributionTest extends BaseDiscreteDistributionTest {
     }
 
     @Test
-    void testHighPrecisionSurvivalProbabilities() {
+    void testAdditionalSurvivalProbabilityHighPrecision() {
         // computed using R version 3.4.4
         testSurvivalProbabilityHighPrecision(
             HypergeometricDistribution.of(500, 70, 300),
diff --git a/commons-statistics-distribution/src/test/java/org/apache/commons/statistics/distribution/ParetoDistributionTest.java b/commons-statistics-distribution/src/test/java/org/apache/commons/statistics/distribution/ParetoDistributionTest.java
index 38450cf..9319717 100644
--- a/commons-statistics-distribution/src/test/java/org/apache/commons/statistics/distribution/ParetoDistributionTest.java
+++ b/commons-statistics-distribution/src/test/java/org/apache/commons/statistics/distribution/ParetoDistributionTest.java
@@ -69,13 +69,18 @@ class ParetoDistributionTest extends BaseContinuousDistributionTest {
     }
 
     @Test
-    void testHighPrecision() {
+    void testAdditionalCumulativeProbabilityHighPrecision() {
         final ParetoDistribution dist = ParetoDistribution.of(2.1, 1.4);
         testCumulativeProbabilityHighPrecision(
             dist,
             new double[] {2.100000000000001, 2.100000000000005},
             new double[] {6.217248937900875e-16, 3.2640556923979585e-15},
             createHighPrecisionTolerance());
+    }
+
+    @Test
+    void testAdditionalSurvivalProbabilityHighPrecision() {
+        final ParetoDistribution dist = ParetoDistribution.of(2.1, 1.4);
         testSurvivalProbabilityHighPrecision(
             dist,
             new double[] {42e11, 64e11},
diff --git a/commons-statistics-distribution/src/test/java/org/apache/commons/statistics/distribution/TrapezoidalDistributionTest.java b/commons-statistics-distribution/src/test/java/org/apache/commons/statistics/distribution/TrapezoidalDistributionTest.java
index 2670124..b14a605 100644
--- a/commons-statistics-distribution/src/test/java/org/apache/commons/statistics/distribution/TrapezoidalDistributionTest.java
+++ b/commons-statistics-distribution/src/test/java/org/apache/commons/statistics/distribution/TrapezoidalDistributionTest.java
@@ -107,7 +107,7 @@ class TrapezoidalDistributionTest extends BaseContinuousDistributionTest {
      * probability is high precision.
      */
     @Test
-    void testHighPrecisionSurvivalProbabilities() {
+    void testAdditionalSurvivalProbabilityHighPrecision() {
         final double a = 0;
         final double b = 0;
         final double c = 1;
diff --git a/commons-statistics-distribution/src/test/java/org/apache/commons/statistics/distribution/ZipfDistributionTest.java b/commons-statistics-distribution/src/test/java/org/apache/commons/statistics/distribution/ZipfDistributionTest.java
index e3675f8..2a7ff45 100644
--- a/commons-statistics-distribution/src/test/java/org/apache/commons/statistics/distribution/ZipfDistributionTest.java
+++ b/commons-statistics-distribution/src/test/java/org/apache/commons/statistics/distribution/ZipfDistributionTest.java
@@ -17,10 +17,14 @@
 
 package org.apache.commons.statistics.distribution;
 
+import java.util.stream.Stream;
 import org.apache.commons.math3.util.MathArrays;
 import org.apache.commons.rng.simple.RandomSource;
 import org.junit.jupiter.api.Assertions;
 import org.junit.jupiter.api.Test;
+import org.junit.jupiter.params.ParameterizedTest;
+import org.junit.jupiter.params.provider.Arguments;
+import org.junit.jupiter.params.provider.MethodSource;
 
 /**
  * Test cases for {@link ZipfDistribution}.
@@ -51,21 +55,28 @@ class ZipfDistributionTest  extends BaseDiscreteDistributionTest {
 
     //-------------------- Additional test cases -------------------------------
 
-    @Test
-    void testHighPrecisionSurvivalProbabilities() {
+    @ParameterizedTest
+    @MethodSource
+    void testAdditionlSurvivalProbabilityHighPrecision(int n, double e, int[] x, double[] expected, DoubleTolerance tol) {
+        testSurvivalProbabilityHighPrecision(ZipfDistribution.of(n, e), x, expected, tol);
+    }
+
+    static Stream<Arguments> testAdditionlSurvivalProbabilityHighPrecision() {
         // computed using scipy.stats (1.7.1) zipfian
-        testSurvivalProbabilityHighPrecision(ZipfDistribution.of(60, 10),
-            new int[] {57, 59},
-            new double[] {2.3189337454689757e-18, 1.6521739576668957e-18},
-            DoubleTolerances.absolute(1e-25));
-        testSurvivalProbabilityHighPrecision(ZipfDistribution.of(60, 50.5),
-            new int[] {57, 59},
-            new double[] {8.8488396450491320e-90, 1.5972093932264611e-90},
-            DoubleTolerances.absolute(1e-95));
-        testSurvivalProbabilityHighPrecision(ZipfDistribution.of(60, 100.5),
-            new int[] {57, 59},
-            new double[] {5.9632998443758656e-178, 1.9760564023408183e-179},
-            DoubleTolerances.absolute(1e-185));
+        return Stream.of(
+            Arguments.of(60, 10,
+                new int[] {57, 59},
+                new double[] {2.3189337454689757e-18, 1.6521739576668957e-18},
+                DoubleTolerances.absolute(1e-25)),
+            Arguments.of(60, 50.5,
+                new int[] {57, 59},
+                new double[] {8.8488396450491320e-90, 1.5972093932264611e-90},
+                DoubleTolerances.absolute(1e-95)),
+            Arguments.of(60, 100.5,
+                new int[] {57, 59},
+                new double[] {5.9632998443758656e-178, 1.9760564023408183e-179},
+                DoubleTolerances.absolute(1e-185))
+        );
     }
 
     /**
@@ -74,7 +85,7 @@ class ZipfDistributionTest  extends BaseDiscreteDistributionTest {
      * it should be a complement to the CDF value.
      */
     @Test
-    void testHighPrecisionSurvivalProbabilitiesWithOverflow() {
+    void testAdditionalSurvivalAndCumulativeProbabilityComplement() {
         // Requires (x+1)^a to overflow
         final int n = 60;
         final double a = 200.5;