summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAdriaan Moors <adriaan.moors@typesafe.com>2012-12-10 12:02:29 -0800
committerAdriaan Moors <adriaan.moors@typesafe.com>2012-12-10 12:02:29 -0800
commit9a5eb7ee0b4f2f079f00262421ce25912a11b9f7 (patch)
tree64048c27aedecdc5c0fa6b17bda8c0e63249e77e
parent2aac703b37aa26c928f2ca712afe6e1aeda604d2 (diff)
parent2aa66bec86fd464712b0d15251cc400ff9d52821 (diff)
downloadscala-9a5eb7ee0b4f2f079f00262421ce25912a11b9f7.tar.gz
scala-9a5eb7ee0b4f2f079f00262421ce25912a11b9f7.tar.bz2
scala-9a5eb7ee0b4f2f079f00262421ce25912a11b9f7.zip
Merge pull request #1672 from jedesah/Random
SI-4664 Make scala.util.Random Serializable
-rw-r--r--src/library/scala/util/Random.scala2
-rw-r--r--test/files/jvm/serialization.scala15
2 files changed, 16 insertions, 1 deletions
diff --git a/src/library/scala/util/Random.scala b/src/library/scala/util/Random.scala
index 24c4cd7a32..2b11594f66 100644
--- a/src/library/scala/util/Random.scala
+++ b/src/library/scala/util/Random.scala
@@ -17,7 +17,7 @@ import scala.language.{implicitConversions, higherKinds}
* @author Stephane Micheloud
*
*/
-class Random(val self: java.util.Random) {
+class Random(val self: java.util.Random) extends AnyRef with Serializable {
/** Creates a new random number generator using a single long seed. */
def this(seed: Long) = this(new java.util.Random(seed))
diff --git a/test/files/jvm/serialization.scala b/test/files/jvm/serialization.scala
index 34b64938b4..f2c47aad77 100644
--- a/test/files/jvm/serialization.scala
+++ b/test/files/jvm/serialization.scala
@@ -604,6 +604,7 @@ object Test {
Test7
Test8
Test9_parallel
+ Test10_util
}
}
@@ -669,3 +670,17 @@ object Test9_parallel {
throw e
}
}
+
+//############################################################################
+// Test classes in package scala.util
+
+object Test10_util {
+ import scala.util.Random
+ def rep[A](n: Int)(f: => A) { if (n > 0) { f; rep(n-1)(f) } }
+
+ try {
+ val random = new Random(345)
+ val random2: Random = read(write(random))
+ rep(5) { assert(random.nextInt == random2.nextInt) }
+ }
+}