STATISTICS-33: Move sample method to the TestUtils
diff --git a/commons-statistics-distribution/src/main/java/org/apache/commons/statistics/distribution/AbstractContinuousDistribution.java b/commons-statistics-distribution/src/main/java/org/apache/commons/statistics/distribution/AbstractContinuousDistribution.java
index 62cdc6b..ee8fb3d 100644
--- a/commons-statistics-distribution/src/main/java/org/apache/commons/statistics/distribution/AbstractContinuousDistribution.java
+++ b/commons-statistics-distribution/src/main/java/org/apache/commons/statistics/distribution/AbstractContinuousDistribution.java
@@ -154,23 +154,6 @@
         return x;
     }
 
-    /**
-     * Utility function for allocating an array and filling it with {@code n}
-     * samples generated by the given {@code sampler}.
-     *
-     * @param n Number of samples.
-     * @param sampler Sampler.
-     * @return an array of size {@code n}.
-     */
-    public static double[] sample(int n,
-                                  ContinuousDistribution.Sampler sampler) {
-        final double[] samples = new double[n];
-        for (int i = 0; i < n; i++) {
-            samples[i] = sampler.sample();
-        }
-        return samples;
-    }
-
     /**{@inheritDoc} */
     @Override
     public ContinuousDistribution.Sampler createSampler(final UniformRandomProvider rng) {
diff --git a/commons-statistics-distribution/src/main/java/org/apache/commons/statistics/distribution/AbstractDiscreteDistribution.java b/commons-statistics-distribution/src/main/java/org/apache/commons/statistics/distribution/AbstractDiscreteDistribution.java
index 67ca871..8779a34 100644
--- a/commons-statistics-distribution/src/main/java/org/apache/commons/statistics/distribution/AbstractDiscreteDistribution.java
+++ b/commons-statistics-distribution/src/main/java/org/apache/commons/statistics/distribution/AbstractDiscreteDistribution.java
@@ -160,23 +160,6 @@
         return result;
     }
 
-    /**
-     * Utility function for allocating an array and filling it with {@code n}
-     * samples generated by the given {@code sampler}.
-     *
-     * @param n Number of samples.
-     * @param sampler Sampler.
-     * @return an array of size {@code n}.
-     */
-    public static int[] sample(int n,
-                               DiscreteDistribution.Sampler sampler) {
-        final int[] samples = new int[n];
-        for (int i = 0; i < n; i++) {
-            samples[i] = sampler.sample();
-        }
-        return samples;
-    }
-
     /** {@inheritDoc} */
     @Override
     public DiscreteDistribution.Sampler createSampler(final UniformRandomProvider rng) {
diff --git a/commons-statistics-distribution/src/test/java/org/apache/commons/statistics/distribution/BetaDistributionTest.java b/commons-statistics-distribution/src/test/java/org/apache/commons/statistics/distribution/BetaDistributionTest.java
index 6407324..336b61c 100644
--- a/commons-statistics-distribution/src/test/java/org/apache/commons/statistics/distribution/BetaDistributionTest.java
+++ b/commons-statistics-distribution/src/test/java/org/apache/commons/statistics/distribution/BetaDistributionTest.java
@@ -450,7 +450,7 @@
         for (final double alpha : ALPHA_BETAS) {
             for (final double beta : ALPHA_BETAS) {
                 final BetaDistribution betaDistribution = new BetaDistribution(alpha, beta);
-                final double[] observed = AbstractContinuousDistribution.sample(numSamples,
+                final double[] observed = TestUtils.sample(numSamples,
                         betaDistribution.createSampler(rng));
                 Arrays.sort(observed);
 
@@ -474,7 +474,7 @@
                 final BetaDistribution betaDistribution = new BetaDistribution(alpha, beta);
 
                 final ContinuousDistribution.Sampler sampler = betaDistribution.createSampler(rng);
-                final double[] observed = AbstractContinuousDistribution.sample(numSamples, sampler);
+                final double[] observed = TestUtils.sample(numSamples, sampler);
 
                 final double gT = gTest(betaDistribution, observed);
                 Assertions.assertFalse(gT < level,
diff --git a/commons-statistics-distribution/src/test/java/org/apache/commons/statistics/distribution/ContinuousDistributionAbstractTest.java b/commons-statistics-distribution/src/test/java/org/apache/commons/statistics/distribution/ContinuousDistributionAbstractTest.java
index 2b285ee..6c5efff 100644
--- a/commons-statistics-distribution/src/test/java/org/apache/commons/statistics/distribution/ContinuousDistributionAbstractTest.java
+++ b/commons-statistics-distribution/src/test/java/org/apache/commons/statistics/distribution/ContinuousDistributionAbstractTest.java
@@ -473,7 +473,7 @@
         final int sampleSize = 1000;
         final ContinuousDistribution.Sampler sampler =
             distribution.createSampler(RandomSource.create(RandomSource.WELL_19937_C, 123456789L));
-        final double[] sample = AbstractContinuousDistribution.sample(sampleSize, sampler);
+        final double[] sample = TestUtils.sample(sampleSize, sampler);
         final double[] quartiles = TestUtils.getDistributionQuartiles(distribution);
         final double[] expected = {250, 250, 250, 250};
         final long[] counts = new long[4];
diff --git a/commons-statistics-distribution/src/test/java/org/apache/commons/statistics/distribution/DiscreteDistributionAbstractTest.java b/commons-statistics-distribution/src/test/java/org/apache/commons/statistics/distribution/DiscreteDistributionAbstractTest.java
index a50a521..521dcf5 100644
--- a/commons-statistics-distribution/src/test/java/org/apache/commons/statistics/distribution/DiscreteDistributionAbstractTest.java
+++ b/commons-statistics-distribution/src/test/java/org/apache/commons/statistics/distribution/DiscreteDistributionAbstractTest.java
@@ -286,7 +286,7 @@
         // Use fixed seed.
         final DiscreteDistribution.Sampler sampler =
             dist.createSampler(RandomSource.create(RandomSource.WELL_512_A, 1000));
-        final int[] sample = AbstractDiscreteDistribution.sample(sampleSize, sampler);
+        final int[] sample = TestUtils.sample(sampleSize, sampler);
         for (int i = 0; i < sampleSize; i++) {
             for (int j = 0; j < length; j++) {
                 if (sample[i] == densityPoints[j]) {
diff --git a/commons-statistics-distribution/src/test/java/org/apache/commons/statistics/distribution/TestUtils.java b/commons-statistics-distribution/src/test/java/org/apache/commons/statistics/distribution/TestUtils.java
index df770ee..19920e8 100644
--- a/commons-statistics-distribution/src/test/java/org/apache/commons/statistics/distribution/TestUtils.java
+++ b/commons-statistics-distribution/src/test/java/org/apache/commons/statistics/distribution/TestUtils.java
@@ -270,4 +270,38 @@
         }
         return positiveMassCount;
     }
+
+    /**
+     * Utility function for allocating an array and filling it with {@code n}
+     * samples generated by the given {@code sampler}.
+     *
+     * @param n Number of samples.b
+     * @param sampler Sampler.
+     * @return an array of size {@code n}.
+     */
+    public static double[] sample(int n,
+                                  ContinuousDistribution.Sampler sampler) {
+        final double[] samples = new double[n];
+        for (int i = 0; i < n; i++) {
+            samples[i] = sampler.sample();
+        }
+        return samples;
+    }
+
+    /**
+     * Utility function for allocating an array and filling it with {@code n}
+     * samples generated by the given {@code sampler}.
+     *
+     * @param n Number of samples.
+     * @param sampler Sampler.
+     * @return an array of size {@code n}.
+     */
+    public static int[] sample(int n,
+                               DiscreteDistribution.Sampler sampler) {
+        final int[] samples = new int[n];
+        for (int i = 0; i < n; i++) {
+            samples[i] = sampler.sample();
+        }
+        return samples;
+    }
 }
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 46af645..28f3090 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
@@ -152,7 +152,7 @@
                 for (int i = 0; i < numPoints; i++) {
                     expectedCounts[i] = sampleSize * (weights[i] / weightSum);
                 }
-                final int[] sample = AbstractDiscreteDistribution.sample(sampleSize, distribution);
+                final int[] sample = TestUtils.sample(sampleSize, distribution);
                 for (final int s : sample) {
                     observedCounts[s - 1]++;
                 }