summaryrefslogtreecommitdiff
path: root/test/files/run
diff options
context:
space:
mode:
authorJason Zaugg <jzaugg@gmail.com>2013-09-09 13:48:11 -0700
committerJason Zaugg <jzaugg@gmail.com>2013-09-09 13:48:11 -0700
commit6c431e66f591acdb104f09adaa935dc85e71a469 (patch)
tree576240e9973acb6576cd1631b3fa97e8581e46ff /test/files/run
parentd1cff2078c4687ee1770bc9493791d2053b51a92 (diff)
parentfe9a3e9c5ef2d2de5fa62a14fa4a613a573e5e5f (diff)
downloadscala-6c431e66f591acdb104f09adaa935dc85e71a469.tar.gz
scala-6c431e66f591acdb104f09adaa935dc85e71a469.tar.bz2
scala-6c431e66f591acdb104f09adaa935dc85e71a469.zip
Merge pull request #2866 from retronym/ticket/7269
SI-7269 Rework MapLike#retains to account for desugaring change
Diffstat (limited to 'test/files/run')
-rw-r--r--test/files/run/t7269.scala32
1 files changed, 32 insertions, 0 deletions
diff --git a/test/files/run/t7269.scala b/test/files/run/t7269.scala
new file mode 100644
index 0000000000..d22e57dfee
--- /dev/null
+++ b/test/files/run/t7269.scala
@@ -0,0 +1,32 @@
+import scala.collection.JavaConversions._
+import scala.collection.mutable
+
+object Test extends App {
+
+ def testMap(): Unit = {
+ val mapJ = new java.util.HashMap[Int, String]
+ val mapS: mutable.Map[Int, String] = mapJ
+
+ (10 to 20).foreach(i => mapS += ((i, i.toString)))
+ assert(11 == mapS.size)
+
+ // ConcurrentModificationException thrown in the following line
+ mapS.retain((i, str) => i % 2 == 0)
+ assert(6 == mapS.size)
+ }
+
+ def testSet(): Unit = {
+ val mapJ = new java.util.HashSet[Int]
+ val mapS: mutable.Set[Int] = mapJ
+
+ (10 to 20).foreach(i => mapS += i)
+ assert(11 == mapS.size)
+
+ // ConcurrentModificationException thrown in the following line
+ mapS.retain((i) => i % 2 == 0)
+ assert(6 == mapS.size)
+ }
+
+ testSet()
+ testMap()
+}