Files
kotlin/compiler/testData/codegen/reflection/classLoaders/differentClassLoaders.kt
2017-09-12 15:08:21 +03:00

25 lines
652 B
Kotlin
Vendored

package test
import kotlin.reflect.KClass
import kotlin.reflect.full.*
import kotlin.test.*
class K(val p: String)
class Test {
fun kClass(): Any = K::class
fun doTest(k1: KClass<*>, k2: KClass<*>) {
// KClass instances for classes loaded with different class loaders should have the same string representation,
// but should not be equal
assertEquals("$k1", "$k2")
assertNotEquals(k1, k2)
// The same for properties of these classes
val p1 = k1.memberProperties.first()
val p2 = k2.memberProperties.first()
assertEquals("$p1", "$p2")
assertNotEquals(p1, p2)
}
}