Author: srowen
Date: Mon Jun 27 10:54:47 2011
New Revision: 1140097

URL: http://svn.apache.org/viewvc?rev=1140097&view=rev
Log:
MAHOUT-743 use fixed seed in tests

Modified:
    mahout/trunk/math/src/main/java/org/apache/mahout/common/RandomWrapper.java
    
mahout/trunk/math/src/test/java/org/apache/mahout/common/RandomUtilsTest.java

Modified: 
mahout/trunk/math/src/main/java/org/apache/mahout/common/RandomWrapper.java
URL: 
http://svn.apache.org/viewvc/mahout/trunk/math/src/main/java/org/apache/mahout/common/RandomWrapper.java?rev=1140097&r1=1140096&r2=1140097&view=diff
==============================================================================
--- mahout/trunk/math/src/main/java/org/apache/mahout/common/RandomWrapper.java 
(original)
+++ mahout/trunk/math/src/main/java/org/apache/mahout/common/RandomWrapper.java 
Mon Jun 27 10:54:47 2011
@@ -50,16 +50,18 @@ public final class RandomWrapper extends
   }
 
   private Random buildRandom() {
-    if (testSeed) {
-      return new MersenneTwisterRNG(STANDARD_SEED);
-    } else if (fixedSeed == null) {
-      // Force use of standard generator, and disallow use of those based on 
/dev/random since
-      // it causes hangs on Ubuntu
-      try {
-        return new MersenneTwisterRNG(SEED_GENERATOR);
-      } catch (SeedException se) {
-        // Can't happen
-        throw new IllegalStateException(se);
+    if (fixedSeed == null) {
+      if (testSeed) {
+        return new MersenneTwisterRNG(STANDARD_SEED);
+      } else {
+        // Force use of standard generator, and disallow use of those based on 
/dev/random since
+        // it causes hangs on Ubuntu
+        try {
+          return new MersenneTwisterRNG(SEED_GENERATOR);
+        } catch (SeedException se) {
+          // Can't happen
+          throw new IllegalStateException(se);
+        }
       }
     } else {
       return new MersenneTwisterRNG(RandomUtils.longSeedtoBytes(fixedSeed));

Modified: 
mahout/trunk/math/src/test/java/org/apache/mahout/common/RandomUtilsTest.java
URL: 
http://svn.apache.org/viewvc/mahout/trunk/math/src/test/java/org/apache/mahout/common/RandomUtilsTest.java?rev=1140097&r1=1140096&r2=1140097&view=diff
==============================================================================
--- 
mahout/trunk/math/src/test/java/org/apache/mahout/common/RandomUtilsTest.java 
(original)
+++ 
mahout/trunk/math/src/test/java/org/apache/mahout/common/RandomUtilsTest.java 
Mon Jun 27 10:54:47 2011
@@ -99,4 +99,20 @@ public final class RandomUtilsTest exten
     }
   }
 
+  @Test
+  public void testSetSeed() {
+    Random rTest0 = RandomUtils.getRandom();
+    Random rTest1 = RandomUtils.getRandom();
+    Random r0 = RandomUtils.getRandom(0);
+    Random r1 = RandomUtils.getRandom(1);
+
+    long lTest0 = rTest0.nextLong();
+    long lTest1 = rTest1.nextLong();
+    long l0 = r0.nextLong();
+    long l1 = r1.nextLong();
+    assertEquals("getRandom() must match getRandom() in unit tests", lTest0, 
lTest1);
+    assertTrue("getRandom() must differ from getRandom(0)", lTest0 != l1);
+    assertTrue("getRandom(0) must differ from getRandom(1)", l0 != l1);
+  }
+
 }


Reply via email to