summaryrefslogtreecommitdiff
path: root/test/junit
diff options
context:
space:
mode:
authorJason Zaugg <jzaugg@gmail.com>2014-11-04 14:12:11 +1000
committerJason Zaugg <jzaugg@gmail.com>2014-11-04 14:12:11 +1000
commitd61d007d4852032fcfd339ab2c904a4de6836c4d (patch)
treecf696021da8e421cdb5dd8014228d237a213891d /test/junit
parentc4fd2ec9a8195de69f878615565c9dcda3687041 (diff)
parentd33ba3bb9c5f09374dd585cc6f0ff6294b98fc6a (diff)
downloadscala-d61d007d4852032fcfd339ab2c904a4de6836c4d.tar.gz
scala-d61d007d4852032fcfd339ab2c904a4de6836c4d.tar.bz2
scala-d61d007d4852032fcfd339ab2c904a4de6836c4d.zip
Merge pull request #4052 from Lymia/issue/8910
SI-8910 BitSet sometimes uses exponential memory.
Diffstat (limited to 'test/junit')
-rw-r--r--test/junit/scala/collection/mutable/BitSetTest.scala22
1 files changed, 22 insertions, 0 deletions
diff --git a/test/junit/scala/collection/mutable/BitSetTest.scala b/test/junit/scala/collection/mutable/BitSetTest.scala
new file mode 100644
index 0000000000..8d164b50d4
--- /dev/null
+++ b/test/junit/scala/collection/mutable/BitSetTest.scala
@@ -0,0 +1,22 @@
+package scala.collection.mutable
+
+import org.junit.runner.RunWith
+import org.junit.runners.JUnit4
+import org.junit.{Test, Ignore}
+
+@RunWith(classOf[JUnit4])
+class BitSetTest {
+ // Test for SI-8910
+ @Test def capacityExpansionTest() {
+ val bitSet = BitSet.empty
+ val size = bitSet.toBitMask.length
+ bitSet ^= bitSet
+ assert(bitSet.toBitMask.length == size, "Capacity of bitset changed after ^=")
+ bitSet |= bitSet
+ assert(bitSet.toBitMask.length == size, "Capacity of bitset changed after |=")
+ bitSet &= bitSet
+ assert(bitSet.toBitMask.length == size, "Capacity of bitset changed after &=")
+ bitSet &~= bitSet
+ assert(bitSet.toBitMask.length == size, "Capacity of bitset changed after &~=")
+ }
+}