Support reflection tests on Android

This commit is contained in:
Mikhael Bogdanov
2019-01-22 17:48:45 +01:00
parent 91980c5293
commit f2a51d3b80
49 changed files with 235 additions and 174 deletions
@@ -2,6 +2,8 @@
// WITH_REFLECT
package test
import kotlin.test.assertEquals
import kotlin.test.assertTrue
import kotlin.reflect.jvm.jvmName
@@ -12,17 +14,17 @@ class Klass {
}
fun box(): String {
assertEquals("Klass", Klass::class.jvmName)
assertEquals("Klass\$Nested", Klass.Nested::class.jvmName)
assertEquals("Klass\$Companion", Klass.Companion::class.jvmName)
assertEquals("test.Klass", Klass::class.jvmName)
assertEquals("test.Klass\$Nested", Klass.Nested::class.jvmName)
assertEquals("test.Klass\$Companion", Klass.Companion::class.jvmName)
class Local
val l = Local::class.jvmName
assertTrue(l != null && l.startsWith("JvmNameKt\$") && "\$box\$" in l && l.endsWith("\$Local"))
assertTrue(l != null && l.startsWith("test.JvmNameKt\$") && "\$box\$" in l && l.endsWith("\$Local"))
val obj = object {}
val o = obj.javaClass.kotlin.jvmName
assertTrue(o != null && o.startsWith("JvmNameKt\$") && "\$box\$" in o && o.endsWith("\$1"))
assertTrue(o != null && o.startsWith("test.JvmNameKt\$") && "\$box\$" in o && o.endsWith("\$1"))
return "OK"
}
@@ -3,6 +3,8 @@
// WITH_REFLECT
package test
import kotlin.test.assertEquals
class Klass {
@@ -11,9 +13,9 @@ class Klass {
}
fun box(): String {
assertEquals("Klass", Klass::class.qualifiedName)
assertEquals("Klass.Nested", Klass.Nested::class.qualifiedName)
assertEquals("Klass.Companion", Klass.Companion::class.qualifiedName)
assertEquals("test.Klass", Klass::class.qualifiedName)
assertEquals("test.Klass.Nested", Klass.Nested::class.qualifiedName)
assertEquals("test.Klass.Companion", Klass.Companion::class.qualifiedName)
class Local
assertEquals(null, Local::class.qualifiedName)