Move java 8+defaults tests to separate folder

This commit is contained in:
Mikhael Bogdanov
2017-01-12 16:11:30 +01:00
parent 0a363fd1a5
commit d278a5c6d5
19 changed files with 121 additions and 112 deletions
@@ -0,0 +1,50 @@
// JVM_TARGET: 1.8
// KOTLIN_CONFIGURATION_FLAGS: +JVM.JVM8_TARGET_WITH_DEFAULTS
// WITH_REFLECT
// FULL_JDK
interface Test {
fun test(): String {
return "Test"
}
}
open class TestClass : Test {
}
interface Test2 : Test {
override fun test(): String {
return "Test2"
}
}
interface Test3 : Test2 {
}
class TestClass2 : TestClass(), Test3 {
}
fun box(): String {
val test = TestClass2().test()
if (test != "Test2") return "fail 1: $test"
checkNoMethod(TestClass::class.java, "test")
checkNoMethod(Test3::class.java, "test")
checkNoMethod(TestClass2::class.java, "test")
return "OK"
}
fun checkNoMethod(clazz: Class<*>, name: String) {
try {
clazz.getDeclaredMethod("test")
}
catch (e: NoSuchMethodException) {
return
}
throw AssertionError("fail " + clazz)
}