[K/N] Migrate runtime/collections tests to new testing infra ^KT-61259
This commit is contained in:
committed by
Space Team
parent
10a6d8fd2c
commit
b3e13fb2c2
@@ -0,0 +1,111 @@
|
||||
/*
|
||||
* Copyright 2010-2023 JetBrains s.r.o. and Kotlin Programming Language contributors.
|
||||
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
|
||||
*/
|
||||
|
||||
package test.collections
|
||||
|
||||
import kotlin.test.*
|
||||
|
||||
// TODO: Check which parts are already tested in libraries/stdlib/test/collections
|
||||
class HashSetTest {
|
||||
@Test fun basic() {
|
||||
val a = HashSet<String>()
|
||||
assertTrue(a.isEmpty())
|
||||
assertEquals(0, a.size)
|
||||
|
||||
assertTrue(a.add("1"))
|
||||
assertTrue(a.add("2"))
|
||||
assertTrue(a.add("3"))
|
||||
assertFalse(a.isEmpty())
|
||||
assertEquals(3, a.size)
|
||||
assertTrue(a.contains("1"))
|
||||
assertTrue(a.contains("2"))
|
||||
assertTrue(a.contains("3"))
|
||||
assertFalse(a.contains("4"))
|
||||
|
||||
assertTrue(a.remove("1"))
|
||||
assertEquals(2, a.size)
|
||||
assertFalse(a.contains("1"))
|
||||
assertTrue(a.contains("2"))
|
||||
assertTrue(a.contains("3"))
|
||||
assertFalse(a.contains("4"))
|
||||
|
||||
assertTrue(a.add("4"))
|
||||
assertEquals(3, a.size)
|
||||
assertFalse(a.contains("1"))
|
||||
assertTrue(a.contains("2"))
|
||||
assertTrue(a.contains("3"))
|
||||
assertTrue(a.contains("4"))
|
||||
|
||||
assertFalse(a.add("4"))
|
||||
assertEquals(3, a.size)
|
||||
assertFalse(a.contains("1"))
|
||||
assertTrue(a.contains("2"))
|
||||
assertTrue(a.contains("3"))
|
||||
assertTrue(a.contains("4"))
|
||||
|
||||
a.clear()
|
||||
assertTrue(a.isEmpty())
|
||||
assertEquals(0, a.size)
|
||||
assertFalse(a.contains("1"))
|
||||
assertFalse(a.contains("2"))
|
||||
assertFalse(a.contains("3"))
|
||||
assertFalse(a.contains("4"))
|
||||
}
|
||||
|
||||
@Test fun iterator() {
|
||||
val s = HashSet(listOf("1", "2", "3"))
|
||||
val it = s.iterator()
|
||||
assertTrue(it.hasNext())
|
||||
assertEquals("1", it.next())
|
||||
assertTrue(it.hasNext())
|
||||
assertEquals("2", it.next())
|
||||
assertTrue(it.hasNext())
|
||||
assertEquals("3", it.next())
|
||||
assertFalse(it.hasNext())
|
||||
}
|
||||
|
||||
@Test fun equals() {
|
||||
val s = HashSet(listOf("1", "2", "3"))
|
||||
assertTrue(s == setOf("1", "2", "3"))
|
||||
assertTrue(s == setOf("2", "3", "1")) // order does not matter
|
||||
assertFalse(s == setOf("1", "2", "4"))
|
||||
assertFalse(s == setOf("1", "2"))
|
||||
}
|
||||
|
||||
@Test fun hashCodeTest() {
|
||||
val s = HashSet(listOf("1", "2", "3"))
|
||||
assertTrue(s.hashCode() == setOf("1", "2", "3").hashCode())
|
||||
}
|
||||
|
||||
@Test fun toStringTest() {
|
||||
val s = HashSet(listOf("1", "2", "3"))
|
||||
assertTrue(s.toString() == setOf("1", "2", "3").toString())
|
||||
}
|
||||
|
||||
@Test fun containsAll() {
|
||||
val s = HashSet(listOf("1", "2", "3", "4", "5"))
|
||||
assertFalse(s.containsAll(listOf("6", "7", "8")))
|
||||
assertFalse(s.containsAll(listOf("5", "6", "7")))
|
||||
assertFalse(s.containsAll(listOf("4", "5", "6")))
|
||||
assertTrue(s.containsAll(listOf("3", "4", "5")))
|
||||
assertTrue(s.containsAll(listOf("2", "3", "4")))
|
||||
}
|
||||
|
||||
@Test fun removeAll() {
|
||||
val s = HashSet(listOf("1", "2", "3", "4", "5", "1"))
|
||||
assertFalse(s.removeAll(listOf("6", "7", "8")))
|
||||
assertEquals(setOf("1", "2", "3", "4", "5", "1"), s)
|
||||
assertTrue(s.removeAll(listOf("5", "3", "1")))
|
||||
assertEquals(setOf("2", "4"), s)
|
||||
}
|
||||
|
||||
@Test fun retainAll() {
|
||||
val s = HashSet(listOf("1", "2", "3", "4", "5"))
|
||||
assertFalse(s.retainAll(listOf("1", "2", "3", "4", "5")))
|
||||
assertEquals(setOf("1", "2", "3", "4", "5"), s)
|
||||
assertTrue(s.retainAll(listOf("5", "3", "1")))
|
||||
assertEquals(setOf("1", "3", "5"), s)
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user