05e22e56d3
^KT-59057 Merge-request: KT-MR-10570 Merged-by: Vladimir Sukharev <Vladimir.Sukharev@jetbrains.com>
31 lines
911 B
Kotlin
Vendored
31 lines
911 B
Kotlin
Vendored
// TARGET_BACKEND: JVM
|
|
// WITH_REFLECT
|
|
|
|
import kotlin.reflect.KClass
|
|
import kotlin.reflect.KVisibility
|
|
import kotlin.test.assertEquals
|
|
|
|
class DefaultVisibilityClass
|
|
public class PublicClass {
|
|
protected class ProtectedClass
|
|
fun getProtectedClass(): KClass<*> = ProtectedClass::class
|
|
}
|
|
internal class InternalClass
|
|
private class PrivateClass
|
|
|
|
fun box(): String {
|
|
assertEquals(KVisibility.PUBLIC, DefaultVisibilityClass::class.visibility)
|
|
assertEquals(KVisibility.PUBLIC, PublicClass::class.visibility)
|
|
assertEquals(KVisibility.PROTECTED, PublicClass().getProtectedClass().visibility)
|
|
assertEquals(KVisibility.INTERNAL, InternalClass::class.visibility)
|
|
assertEquals(KVisibility.PRIVATE, PrivateClass::class.visibility)
|
|
|
|
class Local
|
|
assertEquals(null, Local::class.visibility)
|
|
|
|
val anonymous = object {}
|
|
assertEquals(null, anonymous::class.visibility)
|
|
|
|
return "OK"
|
|
}
|