MATH-1158.

Utility method instead of explicit loop.


Project: http://git-wip-us.apache.org/repos/asf/commons-math/repo
Commit: http://git-wip-us.apache.org/repos/asf/commons-math/commit/a6eda3d8
Tree: http://git-wip-us.apache.org/repos/asf/commons-math/tree/a6eda3d8
Diff: http://git-wip-us.apache.org/repos/asf/commons-math/diff/a6eda3d8

Branch: refs/heads/feature-MATH-1158
Commit: a6eda3d8eff423ecb4901aa07339364732c02ddf
Parents: 7530b4b
Author: Gilles <er...@apache.org>
Authored: Fri Mar 11 04:38:30 2016 +0100
Committer: Gilles <er...@apache.org>
Committed: Fri Mar 11 04:38:30 2016 +0100

----------------------------------------------------------------------
 .../math4/distribution/BetaDistributionTest.java      | 14 ++++++--------
 .../distribution/RealDistributionAbstractTest.java    |  7 +------
 2 files changed, 7 insertions(+), 14 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/commons-math/blob/a6eda3d8/src/test/java/org/apache/commons/math4/distribution/BetaDistributionTest.java
----------------------------------------------------------------------
diff --git 
a/src/test/java/org/apache/commons/math4/distribution/BetaDistributionTest.java 
b/src/test/java/org/apache/commons/math4/distribution/BetaDistributionTest.java
index d3e167d..373271d 100644
--- 
a/src/test/java/org/apache/commons/math4/distribution/BetaDistributionTest.java
+++ 
b/src/test/java/org/apache/commons/math4/distribution/BetaDistributionTest.java
@@ -321,12 +321,14 @@ public class BetaDistributionTest {
 
     @Test
     public void testMomentsSampling() {
-        RandomGenerator random = new Well1024a(0x7829862c82fec2dal);
+        final UniformRandomProvider rng = 
RandomSource.create(RandomSource.WELL_1024_A,
+                                                              123456789L);
         final int numSamples = 1000;
         for (final double alpha : alphaBetas) {
             for (final double beta : alphaBetas) {
-                final BetaDistribution betaDistribution = new 
BetaDistribution(random, alpha, beta);
-                final double[] observed = new BetaDistribution(alpha, 
beta).sample(numSamples);
+                final BetaDistribution betaDistribution = new 
BetaDistribution(alpha, beta);
+                final double[] observed = 
AbstractRealDistribution.sample(numSamples,
+                                                                          
betaDistribution.createSampler(rng));
                 Arrays.sort(observed);
 
                 final String distribution = String.format("Beta(%.2f, %.2f)", 
alpha, beta);
@@ -353,11 +355,7 @@ public class BetaDistributionTest {
                 final BetaDistribution betaDistribution = new 
BetaDistribution(alpha, beta);
 
                 final RealDistribution.Sampler sampler = 
betaDistribution.createSampler(rng);
-                final double[] observed = new double[numSamples];
-
-                for (int i = 0; i < numSamples; i++) {
-                    observed[i] = sampler.sample();
-                }
+                final double[] observed = 
AbstractRealDistribution.sample(numSamples, sampler);
 
                 Assert.assertFalse("G goodness-of-fit test rejected null at 
alpha = " + level,
                                    gTest(betaDistribution, observed) < level);

http://git-wip-us.apache.org/repos/asf/commons-math/blob/a6eda3d8/src/test/java/org/apache/commons/math4/distribution/RealDistributionAbstractTest.java
----------------------------------------------------------------------
diff --git 
a/src/test/java/org/apache/commons/math4/distribution/RealDistributionAbstractTest.java
 
b/src/test/java/org/apache/commons/math4/distribution/RealDistributionAbstractTest.java
index fa1542f..61d01ff 100644
--- 
a/src/test/java/org/apache/commons/math4/distribution/RealDistributionAbstractTest.java
+++ 
b/src/test/java/org/apache/commons/math4/distribution/RealDistributionAbstractTest.java
@@ -347,12 +347,7 @@ public abstract class RealDistributionAbstractTest {
         final int sampleSize = 1000;
         final RealDistribution.Sampler sampler =
             
distribution.createSampler(RandomSource.create(RandomSource.WELL_19937_C, 
123456789L));
-
-        final double[] sample = new double[sampleSize];
-        for (int i = 0; i < sampleSize; i++) {
-            sample[i] = sampler.sample();
-        }
-
+        final double[] sample = AbstractRealDistribution.sample(sampleSize, 
sampler);
         final double[] quartiles = 
TestUtils.getDistributionQuartiles(distribution);
         final double[] expected = {250, 250, 250, 250};
         final long[] counts = new long[4];

Reply via email to