Files
kotlin-fork/compiler/testData/codegen/box/reflection/mapping/memberProperty.kt
T
2020-06-02 12:00:52 +03:00

31 lines
680 B
Kotlin
Vendored

// TARGET_BACKEND: JVM
// WITH_REFLECT
import kotlin.reflect.jvm.*
import kotlin.test.*
class K(var value: Long)
fun box(): String {
val p = K::value
assertNotNull(p.javaField, "Fail p field")
val getter = p.javaGetter!!
val setter = p.javaSetter!!
assertEquals(K::class.java.getMethod("getValue"), getter)
assertEquals(K::class.java.getMethod("setValue", Long::class.java), setter)
assertNull(p.getter.javaConstructor)
assertNull(p.setter.javaConstructor)
val k = K(42L)
assertEquals(42L, getter.invoke(k), "Fail k getter")
setter.invoke(k, -239L)
assertEquals(-239L, getter.invoke(k), "Fail k setter")
return "OK"
}