From 40c9fee7ebfe3f3322ed111672bd33626acb5035 Mon Sep 17 00:00:00 2001 From: Guillaume Martres Date: Mon, 9 Apr 2018 22:18:34 +0200 Subject: [PATCH] Adapt/remove tests for the 2.13 stdlib. All these changes come from the scala repo, most of them just remove tests related to the parallel collections which are no longer part of the stdlib. --- tests/neg/equality.scala | 9 ---- tests/pos/sudoku.scala | 2 + tests/run/array-charSeq.scala | 5 +- tests/run/equality.scala | 2 +- tests/run/hashset.scala | 48 ----------------- tests/run/parmap-ops.scala | 48 ----------------- tests/run/pc-conversions.scala | 94 ---------------------------------- tests/run/t3647.scala | 23 --------- tests/run/t4608.scala | 8 --- tests/run/t4723.scala | 9 ---- tests/run/t4761.scala | 11 ---- tests/run/t4894.scala | 27 ---------- tests/run/t4895.scala | 16 ------ tests/run/t6052.scala | 21 -------- tests/run/t6410.scala | 9 ---- tests/run/t6467.scala | 20 -------- tests/run/t6908.scala | 6 --- tests/run/t7374.check | 1 - tests/run/t7374/Test.java | 1 - tests/run/t7498.scala | 20 -------- 20 files changed, 6 insertions(+), 374 deletions(-) delete mode 100644 tests/run/hashset.scala delete mode 100644 tests/run/parmap-ops.scala delete mode 100644 tests/run/pc-conversions.scala delete mode 100644 tests/run/t3647.scala delete mode 100644 tests/run/t4608.scala delete mode 100644 tests/run/t4723.scala delete mode 100644 tests/run/t4761.scala delete mode 100644 tests/run/t4894.scala delete mode 100644 tests/run/t4895.scala delete mode 100644 tests/run/t6052.scala delete mode 100644 tests/run/t6410.scala delete mode 100644 tests/run/t6467.scala delete mode 100644 tests/run/t6908.scala delete mode 100644 tests/run/t7498.scala diff --git a/tests/neg/equality.scala b/tests/neg/equality.scala index 3d01418cd561..87eadae20b83 100644 --- a/tests/neg/equality.scala +++ b/tests/neg/equality.scala @@ -119,14 +119,5 @@ object equality { s1 == Nil // error Nil == s2 // error s2 == Nil // error - - import collection.parallel._ - val p1 = ParSeq(1, 2, 3) - val p2 = ParSeq() - Nil == p1 // OK - p1 == Nil // OK - Nil == p2 // OK - p2 == Nil // Ok - } } diff --git a/tests/pos/sudoku.scala b/tests/pos/sudoku.scala index 150586716066..065239bf4390 100644 --- a/tests/pos/sudoku.scala +++ b/tests/pos/sudoku.scala @@ -1,3 +1,5 @@ +import scala.io.StdIn.readLine + object SudokuSolver extends App { // The board is represented by an array of strings (arrays of chars), // held in a global variable m. The program begins by reading 9 lines diff --git a/tests/run/array-charSeq.scala b/tests/run/array-charSeq.scala index 64055c6406ba..e2f019274820 100644 --- a/tests/run/array-charSeq.scala +++ b/tests/run/array-charSeq.scala @@ -1,12 +1,13 @@ +import runtime.ArrayCharSequence + object Test { val arr = Array[Char]('a' to 'i': _*) - var xs: CharSequence = arr + var xs: CharSequence = new runtime.ArrayCharSequence(arr, 0, arr.length) val hash = xs.hashCode def check(chars: CharSequence): Unit = { println("\n[check '" + chars + "'] len = " + chars.length) chars match { - case x: Predef.ArrayCharSequence => assert(x.__arrayOfChars eq arr, ((x.__arrayOfChars, arr))) case x: runtime.ArrayCharSequence => assert(x.xs eq arr, ((x.xs, arr))) case x => assert(false, x) } diff --git a/tests/run/equality.scala b/tests/run/equality.scala index ff5989882196..2af73691d824 100644 --- a/tests/run/equality.scala +++ b/tests/run/equality.scala @@ -1,7 +1,7 @@ // a quickly assembled test of equality. Needs work. object Test { - import scala.runtime.ScalaRunTime.hash + def hash(x: Any): Int = x.## // forces upcast to Any def makeFromInt(x: Int) = List( x.toByte, x.toShort, x.toInt, x.toLong, x.toFloat, x.toDouble, BigInt(x), BigDecimal(x) diff --git a/tests/run/hashset.scala b/tests/run/hashset.scala deleted file mode 100644 index 2c18ade7b493..000000000000 --- a/tests/run/hashset.scala +++ /dev/null @@ -1,48 +0,0 @@ -import scala.collection.generic.{Growable, Shrinkable} -import scala.collection.GenSet -import scala.collection.mutable.FlatHashTable -import scala.collection.mutable.HashSet -import scala.collection.parallel.mutable.ParHashSet - -object Test extends App { - test(new Creator{ - def create[A] = new HashSet[A] - def hashSetType = "HashSet" - }) - - test(new Creator{ - def create[A] = new ParHashSet[A] - def hashSetType = "ParHashSet" - }) - - - def test(creator : Creator): Unit = { - println("*** " + creator.hashSetType + " primitives") - val h1 = creator.create[Int] - for (i <- 0 until 20) h1 += i - println((for (i <- 0 until 20) yield i + " " + (h1 contains i)).toList.sorted mkString(",")) - println((for (i <- 20 until 40) yield i + " " + (h1 contains i)).toList.sorted mkString(",")) - println(h1.toList.sorted mkString ",") - println() - - println("*** " + creator.hashSetType + " Strings with null") - val h2 = creator.create[String] - h2 += null - for (i <- 0 until 20) h2 += "" + i - println("null " + (h2 contains null)) - println((for (i <- 0 until 20) yield i + " " + (h2 contains ("" + i))).toList.sorted mkString(",")) - println((for (i <- 20 until 40) yield i + " " + (h2 contains ("" + i))).toList.sorted mkString(",")) - println((h2.toList map {x => "" + x}).sorted mkString ",") - - h2 -= null - h2 -= "" + 0 - println("null " + (h2 contains null)) - println((for (i <- 0 until 20) yield i + " " + (h2 contains ("" + i))).toList.sorted mkString(",")) - println() - } - - trait Creator { - def create[A] : GenSet[A] with Cloneable with FlatHashTable[A] with Growable[A] with Shrinkable[A] - def hashSetType : String - } -} diff --git a/tests/run/parmap-ops.scala b/tests/run/parmap-ops.scala deleted file mode 100644 index 3c0d8ee4b667..000000000000 --- a/tests/run/parmap-ops.scala +++ /dev/null @@ -1,48 +0,0 @@ -import collection._ - -object Test { - - def main(args: Array[String]): Unit = { - val gm: GenMap[Int, Int] = GenMap(0 -> 0, 1 -> 1).par - - // ops - assert(gm.isDefinedAt(1)) - assert(gm.contains(1)) - assert(gm.getOrElse(1, 2) == 1) - assert(gm.getOrElse(2, 3) == 3) - assert(gm.keysIterator.toSet == Set(0, 1)) - assert(gm.valuesIterator.toSet == Set(0, 1)) - assert(gm.keySet == Set(0, 1)) - assert(gm.keys.toSet == Set(0, 1)) - assert(gm.values.toSet == Set(0, 1)) - try { - gm.default(-1) - assert(false) - } catch { - case e: NoSuchElementException => // ok - } - - assert(gm.filterKeys(_ % 2 == 0)(0) == 0) - assert(gm.filterKeys(_ % 2 == 0).get(1) == None) - assert(gm.mapValues(_ + 1)(0) == 1) - - // with defaults - val pm = parallel.mutable.ParMap(0 -> 0, 1 -> 1) - val dm = pm.withDefault(x => -x) - assert(dm(0) == 0) - assert(dm(1) == 1) - assert(dm(2) == -2) - assert(dm.updated(2, 2) == parallel.ParMap(0 -> 0, 1 -> 1, 2 -> 2)) - dm.put(3, 3) - assert(dm(3) == 3) - assert(pm(3) == 3) - assert(dm(4) == -4) - - val imdm = parallel.immutable.ParMap(0 -> 0, 1 -> 1).withDefault(x => -x) - assert(imdm(0) == 0) - assert(imdm(1) == 1) - assert(imdm(2) == -2) - assert(imdm.updated(2, 2) == parallel.ParMap(0 -> 0, 1 -> 1, 2 -> 2)) - } - -} diff --git a/tests/run/pc-conversions.scala b/tests/run/pc-conversions.scala deleted file mode 100644 index effac118bc81..000000000000 --- a/tests/run/pc-conversions.scala +++ /dev/null @@ -1,94 +0,0 @@ -/* - * filter: inliner warning; re-run with -Yinline-warnings for details - */ - -import collection._ - - -// test conversions between collections -object Test { - - def main(args: Array[String]): Unit = { - testConversions - } - - def testConversions: Unit = { - // seq conversions - assertSeq(parallel.mutable.ParArray(1, 2, 3)) - assertSeq(parallel.mutable.ParHashMap(1 -> 2, 2 -> 3)) - assertSeq(parallel.mutable.ParHashSet(1, 2, 3)) - assertSeq(parallel.immutable.ParRange(1, 50, 1, false)) - assertSeq(parallel.immutable.ParHashMap(1 -> 2, 2 -> 4)) - assertSeq(parallel.immutable.ParHashSet(1, 2, 3)) - - // par conversions - assertPar(Array(1, 2, 3)) - assertPar(mutable.ArrayBuffer(1, 2, 3)) - assertPar(mutable.ArraySeq(1, 2, 3)) - assertPar(mutable.WrappedArray.make[Int](Array(1, 2, 3))) - assertPar(mutable.HashMap(1 -> 1, 2 -> 2)) - assertPar(mutable.HashSet(1, 2, 3)) - assertPar(immutable.Range(1, 50, 1)) - assertPar(immutable.HashMap(1 -> 1, 2 -> 2)) - assertPar(immutable.HashSet(1, 2, 3)) - - // par.to* and to*.par tests - assertToPar(List(1 -> 1, 2 -> 2, 3 -> 3)) - assertToPar(Stream(1 -> 1, 2 -> 2)) - assertToPar(Array(1 -> 1, 2 -> 2)) - assertToPar(mutable.PriorityQueue(1 -> 1, 2 -> 2, 3 -> 3)) - assertToPar(mutable.ArrayBuffer(1 -> 1, 2 -> 2)) - assertToPar(mutable.ArraySeq(1 -> 3)) - assertToPar(mutable.WrappedArray.make[(Int, Int)](Array(1 -> 3))) - assertToPar(mutable.HashMap(1 -> 3)) - assertToPar(mutable.HashSet(1 -> 3)) - assertToPar(immutable.HashMap(1 -> 3)) - assertToPar(immutable.HashSet(1 -> 3)) - assertToPar(parallel.mutable.ParArray(1 -> 1, 2 -> 2, 3 -> 3)) - assertToPar(parallel.mutable.ParHashMap(1 -> 2)) - assertToPar(parallel.mutable.ParHashSet(1 -> 2)) - assertToPar(parallel.immutable.ParHashMap(1 -> 2)) - assertToPar(parallel.immutable.ParHashSet(1 -> 3)) - - assertToParWoMap(immutable.Range(1, 10, 2)) - - // seq and par again conversions) - assertSeqPar(parallel.mutable.ParArray(1, 2, 3)) - } - - def assertSeqPar[T](pc: parallel.ParIterable[T]) = pc.seq.par == pc - - def assertSeq[T](pc: parallel.ParIterable[T]) = assert(pc.seq == pc) - - def assertPar[T, P <: Parallel](xs: GenIterable[T]) = assert(xs == xs.par) - - def assertToPar[K, V](xs: GenTraversable[(K, V)]): Unit = { - xs match { - case _: Seq[_] => - assert(xs.toIterable.par == xs) - assert(xs.par.toIterable == xs) - case _ => - } - - assert(xs.toSeq.par == xs.toSeq) - assert(xs.par.toSeq == xs.toSeq) - - assert(xs.toSet.par == xs.toSet) - assert(xs.par.toSet == xs.toSet) - - assert(xs.toMap.par == xs.toMap) - assert(xs.par.toMap == xs.toMap) - } - - def assertToParWoMap[T](xs: GenSeq[T]): Unit = { - assert(xs.toIterable.par == xs.toIterable) - assert(xs.par.toIterable == xs.toIterable) - - assert(xs.toSeq.par == xs.toSeq) - assert(xs.par.toSeq == xs.toSeq) - - assert(xs.toSet.par == xs.toSet) - assert(xs.par.toSet == xs.toSet) - } - -} diff --git a/tests/run/t3647.scala b/tests/run/t3647.scala deleted file mode 100644 index 8202c30e7fb4..000000000000 --- a/tests/run/t3647.scala +++ /dev/null @@ -1,23 +0,0 @@ - - - -import collection.immutable._ - - -object Test { - def main(args: Array[String]): Unit = { - val ps = PagedSeq.fromLines(List( - "line1", - "line2", - "line3", - "line4" - ).iterator) - assert(ps.filter(_ == '\n').size == 3) - - val ps1 = PagedSeq.fromLines(List("Ok").iterator) - assert(ps1.filter(_ == '\n').size == 0) - - val eps = PagedSeq.fromLines(List().iterator) - assert(eps.filter(_ == '\n').size == 0) - } -} diff --git a/tests/run/t4608.scala b/tests/run/t4608.scala deleted file mode 100644 index 34586e2d0dec..000000000000 --- a/tests/run/t4608.scala +++ /dev/null @@ -1,8 +0,0 @@ -// #4608 -object Test { - - def main(args: Array[String]): Unit = { - ((1 to 100) sliding 10).toList.par.map{_.map{i => i * i}}.flatten - } - -} diff --git a/tests/run/t4723.scala b/tests/run/t4723.scala deleted file mode 100644 index 462d0be43b15..000000000000 --- a/tests/run/t4723.scala +++ /dev/null @@ -1,9 +0,0 @@ - - - -object Test { - def main(args: Array[String]): Unit = { - assert(Nil == collection.parallel.ParSeq()) - assert(collection.parallel.ParSeq() == Nil) - } -} diff --git a/tests/run/t4761.scala b/tests/run/t4761.scala deleted file mode 100644 index c9d8576ab244..000000000000 --- a/tests/run/t4761.scala +++ /dev/null @@ -1,11 +0,0 @@ -object Test { - def main(args: Array[String]): Unit = { - val gs = for (x <- (1 to 5)) yield { if (x % 2 == 0) List(1).seq else List(1).par } - println(gs.flatten) - println(gs.transpose) - - val s = Stream(Vector(1).par, Vector(2).par) - println(s.flatten.toList) - println(s.transpose.map(_.toList).toList) - } -} diff --git a/tests/run/t4894.scala b/tests/run/t4894.scala deleted file mode 100644 index b2d915fdad13..000000000000 --- a/tests/run/t4894.scala +++ /dev/null @@ -1,27 +0,0 @@ - - - - - -object Test { - - def main(args: Array[String]): Unit = { - import collection._ - val hs = mutable.HashSet[Int]() - hs ++= 1 to 10 - hs --= 1 to 10 - - val phs = parallel.mutable.ParHashSet[Int]() - phs ++= 1 to 10 - for (i <- 1 to 10) assert(phs(i)) - phs --= 1 to 10 - assert(phs.isEmpty) - - val phm = parallel.mutable.ParHashMap[Int, Int]() - phm ++= ((1 to 10) zip (1 to 10)) - for (i <- 1 to 10) assert(phm(i) == i) - phm --= 1 to 10 - assert(phm.isEmpty) - } - -} diff --git a/tests/run/t4895.scala b/tests/run/t4895.scala deleted file mode 100644 index fdd091511ab7..000000000000 --- a/tests/run/t4895.scala +++ /dev/null @@ -1,16 +0,0 @@ -object Test { - - def checkPar(sz: Int): Unit = { - import collection._ - val hs = mutable.HashSet[Int]() ++ (1 to sz) - assert(hs.par.map(_ + 1).seq.toSeq.sorted == (2 to (sz + 1))) - } - - def main(args: Array[String]): Unit = { - for (i <- 0 until 100) checkPar(i) - for (i <- 100 until 1000 by 50) checkPar(i) - for (i <- 1000 until 10000 by 500) checkPar(i) - for (i <- 10000 until 100000 by 5000) checkPar(i) - } - -} diff --git a/tests/run/t6052.scala b/tests/run/t6052.scala deleted file mode 100644 index fc70d396247e..000000000000 --- a/tests/run/t6052.scala +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - -object Test extends App { - def seqarr(i: Int) = Array[Int]() ++ (0 until i) - def pararr(i: Int) = seqarr(i).par - - def check[T](i: Int, f: Int => T): Unit = { - val gseq = seqarr(i).toSeq.groupBy(f) - val gpar = pararr(i).groupBy(f) - 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) -} diff --git a/tests/run/t6410.scala b/tests/run/t6410.scala deleted file mode 100644 index 7d25c248500d..000000000000 --- a/tests/run/t6410.scala +++ /dev/null @@ -1,9 +0,0 @@ - - - -object Test extends App { - 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 deleted file mode 100644 index 0ee8699d6475..000000000000 --- a/tests/run/t6467.scala +++ /dev/null @@ -1,20 +0,0 @@ - - - - -import collection._ - - - -object Test extends App { - - 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) - -} diff --git a/tests/run/t6908.scala b/tests/run/t6908.scala deleted file mode 100644 index da37cb0bbde3..000000000000 --- a/tests/run/t6908.scala +++ /dev/null @@ -1,6 +0,0 @@ -object Test { - def main(args: Array[String]): Unit = { - val set = collection.mutable.Set("1", null, "3").par - assert( set exists (_ eq null) ) - } -} diff --git a/tests/run/t7374.check b/tests/run/t7374.check index 4efa6f7af3a2..03d778308bec 100644 --- a/tests/run/t7374.check +++ b/tests/run/t7374.check @@ -1,3 +1,2 @@ List(2, 3) -ParVector(1, 2, 3) List(1, 2) diff --git a/tests/run/t7374/Test.java b/tests/run/t7374/Test.java index 02f86146ca96..52010858d802 100644 --- a/tests/run/t7374/Test.java +++ b/tests/run/t7374/Test.java @@ -1,7 +1,6 @@ public class Test { public static void main(String[] args) { System.out.println(SomeScala.list().tail()); - System.out.println(SomeScala.list().par()); System.out.println(SomeScala.list().init()); } } diff --git a/tests/run/t7498.scala b/tests/run/t7498.scala deleted file mode 100644 index 1dbf0597e0b9..000000000000 --- a/tests/run/t7498.scala +++ /dev/null @@ -1,20 +0,0 @@ - - - - - - - -object Test extends App { - 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)) = () - - tm.par.foreach(kv => ()) -} -