diff options
author | Guillaume Martres <smarter@ubuntu.com> | 2015-05-30 19:04:23 +0200 |
---|---|---|
committer | Guillaume Martres <smarter@ubuntu.com> | 2015-05-30 19:53:31 +0200 |
commit | 8f90105dc4e62e78d53b385df1b2eb29f2855183 (patch) | |
tree | cd9bac9ad514ce3e592217962ac319d0ce0d34f4 /tests | |
parent | dd80fe09cdf4f83efbdf3b7e88f9c686e2a6c137 (diff) | |
download | dotty-8f90105dc4e62e78d53b385df1b2eb29f2855183.tar.gz dotty-8f90105dc4e62e78d53b385df1b2eb29f2855183.tar.bz2 dotty-8f90105dc4e62e78d53b385df1b2eb29f2855183.zip |
Avoid static initialization deadlock in run tests.
See https://github.com/lampepfl/dotty/pull/624#issuecomment-107064519
for a lengthy explanation.
Diffstat (limited to 'tests')
-rw-r--r-- | tests/run/t5375.scala | 13 | ||||
-rw-r--r-- | tests/run/t6052.scala | 10 | ||||
-rw-r--r-- | tests/run/t6410.scala | 12 | ||||
-rw-r--r-- | tests/run/t6467.scala | 12 | ||||
-rw-r--r-- | tests/run/t7498.scala | 10 |
5 files changed, 34 insertions, 23 deletions
diff --git a/tests/run/t5375.scala b/tests/run/t5375.scala index 8c2c06fde..256f5435e 100644 --- a/tests/run/t5375.scala +++ b/tests/run/t5375.scala @@ -1,8 +1,11 @@ -object Test extends dotty.runtime.LegacyApp { +object Test { val foos = (1 to 1000).toSeq - try - foos.par.map(i => if (i % 37 == 0) sys.error("i div 37") else i) - catch { - case ex: RuntimeException => println("Runtime exception") + + def main(args: Array[String]): Unit = { + try + foos.par.map(i => if (i % 37 == 0) sys.error("i div 37") else i) + catch { + case ex: RuntimeException => println("Runtime exception") + } } } diff --git a/tests/run/t6052.scala b/tests/run/t6052.scala index e740f00e1..15bffc1eb 100644 --- a/tests/run/t6052.scala +++ b/tests/run/t6052.scala @@ -5,7 +5,7 @@ -object Test extends dotty.runtime.LegacyApp { +object Test { def seqarr(i: Int) = Array[Int]() ++ (0 until i) def pararr(i: Int) = seqarr(i).par @@ -15,7 +15,9 @@ object Test extends dotty.runtime.LegacyApp { assert(gseq == gpar, (gseq, gpar)) } - for (i <- 0 until 20) check(i, _ > 0) - for (i <- 0 until 20) check(i, _ % 2) - for (i <- 0 until 20) check(i, _ % 4) + def main(args: Array[String]): Unit = { + for (i <- 0 until 20) check(i, _ > 0) + for (i <- 0 until 20) check(i, _ % 2) + for (i <- 0 until 20) check(i, _ % 4) + } } diff --git a/tests/run/t6410.scala b/tests/run/t6410.scala index 0855ffecd..51aaad839 100644 --- a/tests/run/t6410.scala +++ b/tests/run/t6410.scala @@ -1,9 +1,11 @@ -object Test extends dotty.runtime.LegacyApp { - val x = collection.parallel.mutable.ParArray.range(1,10) groupBy { _ % 2 } mapValues { _.size } - println(x) - val y = collection.parallel.immutable.ParVector.range(1,10) groupBy { _ % 2 } mapValues { _.size } - println(y) +object Test { + def main(args: Array[String]): Unit = { + val x = collection.parallel.mutable.ParArray.range(1,10) groupBy { _ % 2 } mapValues { _.size } + println(x) + val y = collection.parallel.immutable.ParVector.range(1,10) groupBy { _ % 2 } mapValues { _.size } + println(y) + } } diff --git a/tests/run/t6467.scala b/tests/run/t6467.scala index e02fb1669..048ef25e2 100644 --- a/tests/run/t6467.scala +++ b/tests/run/t6467.scala @@ -6,15 +6,17 @@ import collection._ -object Test extends dotty.runtime.LegacyApp { +object Test { def compare(s1: String, s2: String): Unit = { assert(s1 == s2, s1 + "\nvs.\n" + s2) } - compare(List(1, 2, 3, 4).aggregate(new java.lang.StringBuffer)(_ append _, _ append _).toString, "1234") - compare(List(1, 2, 3, 4).par.aggregate(new java.lang.StringBuffer)(_ append _, _ append _).toString, "1234") - compare(Seq(0 until 100: _*).aggregate(new java.lang.StringBuffer)(_ append _, _ append _).toString, (0 until 100).mkString) - compare(Seq(0 until 100: _*).par.aggregate(new java.lang.StringBuffer)(_ append _, _ append _).toString, (0 until 100).mkString) + def main(args: Array[String]): Unit = { + compare(List(1, 2, 3, 4).aggregate(new java.lang.StringBuffer)(_ append _, _ append _).toString, "1234") + compare(List(1, 2, 3, 4).par.aggregate(new java.lang.StringBuffer)(_ append _, _ append _).toString, "1234") + compare(Seq(0 until 100: _*).aggregate(new java.lang.StringBuffer)(_ append _, _ append _).toString, (0 until 100).mkString) + compare(Seq(0 until 100: _*).par.aggregate(new java.lang.StringBuffer)(_ append _, _ append _).toString, (0 until 100).mkString) + } } diff --git a/tests/run/t7498.scala b/tests/run/t7498.scala index cab598405..a2555c6b1 100644 --- a/tests/run/t7498.scala +++ b/tests/run/t7498.scala @@ -5,16 +5,18 @@ -object Test extends dotty.runtime.LegacyApp { +object Test { import scala.collection.concurrent.TrieMap class Collision(val idx: Int) { override def hashCode = idx % 10 } - val tm = TrieMap[Collision, Unit]() - for (i <- 0 until 1000) tm(new Collision(i)) = () + def main(args: Array[String]): Unit = { + val tm = TrieMap[Collision, Unit]() + for (i <- 0 until 1000) tm(new Collision(i)) = () - tm.par.foreach(kv => ()) + tm.par.foreach(kv => ()) + } } |