Fix syntheticMethodForProperty.kt for JDK 9+ and Android tests

This commit is contained in:
Alexander Udalov
2020-01-09 11:32:14 +01:00
parent 5803fcdeb4
commit fde9b21a40
@@ -4,6 +4,8 @@
// WITH_RUNTIME // WITH_RUNTIME
// FULL_JDK // FULL_JDK
package test
import java.lang.reflect.Modifier import java.lang.reflect.Modifier
import kotlin.test.* import kotlin.test.*
@@ -30,7 +32,8 @@ fun check(clazz: Class<*>, expected: Boolean = true) {
assertTrue(method.isSynthetic()) assertTrue(method.isSynthetic())
assertTrue(Modifier.isStatic(method.modifiers)) assertTrue(Modifier.isStatic(method.modifiers))
assertTrue(Modifier.isPublic(method.modifiers)) assertTrue(Modifier.isPublic(method.modifiers))
assertEquals("[@Anno(value=OK)]", method.declaredAnnotations.toList().toString()) val str = method.declaredAnnotations.single().toString()
assertTrue("@test.Anno\\(value=\"?OK\"?\\)".toRegex().matches(str), str)
return return
} }
} }
@@ -40,9 +43,9 @@ fun check(clazz: Class<*>, expected: Boolean = true) {
} }
fun box(): String { fun box(): String {
check(Class.forName("A")) check(Class.forName("test.A"))
check(Class.forName("SyntheticMethodForPropertyKt")) check(Class.forName("test.SyntheticMethodForPropertyKt"))
check(Class.forName("T"), expected = false) check(Class.forName("test.T"), expected = false)
check(Class.forName("T\$DefaultImpls")) check(Class.forName("test.T\$DefaultImpls"))
return "OK" return "OK"
} }