blob: bdf06434e36a131bfb9204c2aa1336369aff6760 [file]
// WITH_STDLIB
// MODULE: lib1
// FILE: Demo.kt
var DemoSetterCalls = 0
var DemoGetterCalls = 0
abstract class Demo {
internal fun demoFun(): Int = 5
internal val demoVal: Int = 6
internal val demoValGet: Int
get() = 7
internal var demoVarSetGet: Int = 8
set(value) { ++DemoSetterCalls; field = value }
get() { ++DemoGetterCalls; return field }
}
// MODULE: main()(lib1)
// FILE: MyDemo.kt
class MyDemo : Demo()
// FILE: Box.kt
import kotlin.test.assertEquals
fun testMyDemo() {
val myDemo = MyDemo()
assertEquals(myDemo.demoFun(), 5)
assertEquals(myDemo.demoVal, 6)
assertEquals(myDemo.demoValGet, 7)
assertEquals(myDemo.demoVarSetGet, 8)
myDemo.demoVarSetGet = -9
assertEquals(myDemo.demoVarSetGet, -9)
assertEquals(DemoSetterCalls, 1)
assertEquals(DemoGetterCalls, 2)
}
fun box(): String {
testMyDemo()
return "OK"
}