diff options
author | Dmitry Petrashko <dmitry.petrashko@gmail.com> | 2015-05-22 16:07:23 +0200 |
---|---|---|
committer | Dmitry Petrashko <dmitry.petrashko@gmail.com> | 2015-05-22 16:07:23 +0200 |
commit | 6965b470d433f501203c4e3d77b0919f826691ba (patch) | |
tree | 413446f1af3f40bb69499a60066609af6bc38d9f /tests/run/t3829.scala | |
parent | 91bb668c5f1b6e5c51dad9b373c9398521508bc3 (diff) | |
download | dotty-6965b470d433f501203c4e3d77b0919f826691ba.tar.gz dotty-6965b470d433f501203c4e3d77b0919f826691ba.tar.bz2 dotty-6965b470d433f501203c4e3d77b0919f826691ba.zip |
Enable 440 run tests that pass.
Note that some of them may pass due to several bugs that interfere.
Diffstat (limited to 'tests/run/t3829.scala')
-rw-r--r-- | tests/run/t3829.scala | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/tests/run/t3829.scala b/tests/run/t3829.scala new file mode 100644 index 000000000..ec9772964 --- /dev/null +++ b/tests/run/t3829.scala @@ -0,0 +1,40 @@ +// ticket #3829 +object Test { + import collection.{ mutable, immutable } + + def main(args: Array[String]): Unit = { + val map = immutable.Map(1 -> 2, 3 -> 4) + assert(map.get(0) == None) + + // Since r24255 defaultMap.get(x) returns None rather than + // using the default, so these mostly use apply. + val defmap = map.withDefaultValue(-1) + assert(defmap(0) == -1) + assert(defmap.size == 2) + assert(defmap.iterator.size == 2) + assert(defmap.empty(0) == -1) + assert((defmap + (2 -> 3))(0) == -1) + assert((defmap + (2 -> 3))(1) == 2) + assert((defmap + (2 -> 3))(2) == 3) + assert((defmap - 1)(0) == -1) + assert((defmap - 1)(1) == -1) + assert((defmap - 1)(3) == 4) + + val mutmap = mutable.Map(1 -> 2, 2 -> 3) + assert(mutmap.get(0) == None) + + val defmutmap = mutmap.withDefaultValue(-1) + assert(defmutmap(0) == -1) + assert(defmutmap(3) == -1) + mutmap += 3 -> 4 + assert(defmutmap(3) == 4) + assert(defmutmap(1) == 2) + mutmap -= 1 + assert(defmutmap(1) == -1) + assert(mutmap.get(1) == None) + defmutmap += 1 -> 2 + assert(defmutmap(1) == 2) + assert(mutmap(1) == 2) + } + +} |