Fix the ConcurrentModification test that fails in jdk9+
Modification registration seems to changed in Java 9. Now if the asked capacity in `ensureCapacity` function is less than current capacity, no modification is registered.
This commit is contained in:
committed by
Space Team
parent
ac0e493bac
commit
bf1c9774aa
@@ -167,8 +167,8 @@ actual class ArrayList<E> private constructor(
|
||||
|
||||
final actual fun ensureCapacity(minCapacity: Int) {
|
||||
if (backingList != null) throw IllegalStateException() // just in case somebody casts subList to ArrayList
|
||||
registerModification()
|
||||
if (minCapacity <= backingArray.size) return
|
||||
registerModification()
|
||||
ensureCapacityInternal(minCapacity)
|
||||
}
|
||||
|
||||
|
||||
@@ -139,8 +139,6 @@ class ConcurrentModificationTest {
|
||||
val operations = listOf<CollectionOperation<ArrayList<String>>>(
|
||||
CollectionOperation("trimToSize()") { trimToSize() },
|
||||
CollectionOperation("ensureCapacity(minCapacity > capacity)") { ensureCapacity(100) },
|
||||
CollectionOperation("ensureCapacity(minCapacity < capacity)") { ensureCapacity(1) },
|
||||
CollectionOperation("ensureCapacity(minCapacity == size)") { ensureCapacity(size) },
|
||||
)
|
||||
|
||||
fun testThrowsCME(withArrayList: WithCollection<ArrayList<String>>) {
|
||||
|
||||
Reference in New Issue
Block a user