summaryrefslogtreecommitdiff
path: root/test/files/run/parmap-ops.scala
diff options
context:
space:
mode:
authorAleksandar Pokopec <aleksandar.prokopec@epfl.ch>2011-07-26 17:06:49 +0000
committerAleksandar Pokopec <aleksandar.prokopec@epfl.ch>2011-07-26 17:06:49 +0000
commit68031b3af11a2f79b186607f44d5c327051d19bd (patch)
treeb0381baa1311819156faa5e7dce45f946b6fd38d /test/files/run/parmap-ops.scala
parent1ad15b1f50364dc42e06117bf551159adea25312 (diff)
downloadscala-68031b3af11a2f79b186607f44d5c327051d19bd.tar.gz
scala-68031b3af11a2f79b186607f44d5c327051d19bd.tar.bz2
scala-68031b3af11a2f79b186607f44d5c327051d19bd.zip
Adding the missing ParMap and GenMap methods.
No review.
Diffstat (limited to 'test/files/run/parmap-ops.scala')
-rw-r--r--test/files/run/parmap-ops.scala52
1 files changed, 52 insertions, 0 deletions
diff --git a/test/files/run/parmap-ops.scala b/test/files/run/parmap-ops.scala
new file mode 100644
index 0000000000..01972174f6
--- /dev/null
+++ b/test/files/run/parmap-ops.scala
@@ -0,0 +1,52 @@
+
+
+import collection._
+
+
+
+object Test {
+
+ def main(args: Array[String]) {
+ 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))
+ }
+
+}