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 2019/09/26 14:27:03 UTC

[commons-rng] 04/04: RandomSource.create(RandomSource) can directly call ProviderBuilder.

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-rng.git

commit 01b25d4d0a552bbe6a0e7b877f8b15db2585b6ed
Author: aherbert <ah...@apache.org>
AuthorDate: Thu Sep 26 15:26:55 2019 +0100

    RandomSource.create(RandomSource) can directly call ProviderBuilder.
    
    Added a test of the generator produced for this code execution path.
---
 .../main/java/org/apache/commons/rng/simple/RandomSource.java    | 2 +-
 .../apache/commons/rng/simple/ProvidersCommonParametricTest.java | 9 +++++++++
 2 files changed, 10 insertions(+), 1 deletion(-)

diff --git a/commons-rng-simple/src/main/java/org/apache/commons/rng/simple/RandomSource.java b/commons-rng-simple/src/main/java/org/apache/commons/rng/simple/RandomSource.java
index e8048a4..b98f060 100644
--- a/commons-rng-simple/src/main/java/org/apache/commons/rng/simple/RandomSource.java
+++ b/commons-rng-simple/src/main/java/org/apache/commons/rng/simple/RandomSource.java
@@ -616,7 +616,7 @@ public enum RandomSource {
      * @see #create(RandomSource,Object,Object[])
      */
     public static RestorableUniformRandomProvider create(RandomSource source) {
-        return create(source, null);
+        return ProviderBuilder.create(source.getInternalIdentifier());
     }
 
     /**
diff --git a/commons-rng-simple/src/test/java/org/apache/commons/rng/simple/ProvidersCommonParametricTest.java b/commons-rng-simple/src/test/java/org/apache/commons/rng/simple/ProvidersCommonParametricTest.java
index aa403da..fd7da1c 100644
--- a/commons-rng-simple/src/test/java/org/apache/commons/rng/simple/ProvidersCommonParametricTest.java
+++ b/commons-rng-simple/src/test/java/org/apache/commons/rng/simple/ProvidersCommonParametricTest.java
@@ -115,6 +115,15 @@ public class ProvidersCommonParametricTest {
     }
 
     @Test
+    public void testNullSeed() {
+        // Note: This is the only test that explicitly calls create() with no other arguments.
+        final UniformRandomProvider rng = originalArgs == null ?
+            RandomSource.create(originalSource) :
+            RandomSource.create(originalSource, null, originalArgs);
+        checkNextIntegerInRange(rng, 10, 10000);
+    }
+
+    @Test
     public void testEmptyIntArraySeed() {
         final int[] empty = new int[0];
         Assume.assumeTrue(originalSource.isNativeSeed(empty));