mirror of
https://github.com/jlengrand/kotlin.git
synced 2026-05-09 00:21:47 +00:00
This patch mutes the following test categories:
* Tests with java dependencies (System class,
java stdlib, jvm-oriented annotations etc).
* Coroutines tests.
* Reflection tests.
* Tests with an inheritance from the standard
collections.
60 lines
1.8 KiB
Kotlin
Vendored
60 lines
1.8 KiB
Kotlin
Vendored
// TODO: muted automatically, investigate should it be ran for JS or not
|
|
// IGNORE_BACKEND: JS, NATIVE
|
|
|
|
// WITH_REFLECT
|
|
|
|
import kotlin.test.assertTrue
|
|
import kotlin.test.assertFalse
|
|
|
|
class FinalClass {
|
|
companion object Companion
|
|
}
|
|
open class OpenClass
|
|
abstract class AbstractClass
|
|
interface Interface
|
|
enum class EnumClass
|
|
enum class EnumClassWithAbstractMember { ; abstract fun foo() }
|
|
annotation class AnnotationClass
|
|
object Object
|
|
|
|
fun box(): String {
|
|
assertTrue(FinalClass::class.isFinal)
|
|
assertFalse(FinalClass::class.isOpen)
|
|
assertFalse(FinalClass::class.isAbstract)
|
|
|
|
assertTrue(FinalClass.Companion::class.isFinal)
|
|
assertFalse(FinalClass.Companion::class.isOpen)
|
|
assertFalse(FinalClass.Companion::class.isAbstract)
|
|
|
|
assertFalse(OpenClass::class.isFinal)
|
|
assertTrue(OpenClass::class.isOpen)
|
|
assertFalse(OpenClass::class.isAbstract)
|
|
|
|
assertFalse(AbstractClass::class.isFinal)
|
|
assertFalse(AbstractClass::class.isOpen)
|
|
assertTrue(AbstractClass::class.isAbstract)
|
|
|
|
assertFalse(Interface::class.isFinal)
|
|
assertFalse(Interface::class.isOpen)
|
|
assertTrue(Interface::class.isAbstract)
|
|
|
|
assertTrue(EnumClass::class.isFinal)
|
|
assertFalse(EnumClass::class.isOpen)
|
|
assertFalse(EnumClass::class.isAbstract)
|
|
|
|
assertTrue(EnumClassWithAbstractMember::class.isFinal)
|
|
assertFalse(EnumClassWithAbstractMember::class.isOpen)
|
|
assertFalse(EnumClassWithAbstractMember::class.isAbstract)
|
|
|
|
// Note that unlike in JVM, annotation classes are final in Kotlin
|
|
assertTrue(AnnotationClass::class.isFinal)
|
|
assertFalse(AnnotationClass::class.isOpen)
|
|
assertFalse(AnnotationClass::class.isAbstract)
|
|
|
|
assertTrue(Object::class.isFinal)
|
|
assertFalse(Object::class.isOpen)
|
|
assertFalse(Object::class.isAbstract)
|
|
|
|
return "OK"
|
|
}
|