Tests for private members and accessors for them

This commit is contained in:
Michael Bogdanov
2015-10-15 14:03:05 +03:00
committed by Max Kammerer
parent 8641dbf42a
commit 3b02498ca8
16 changed files with 283 additions and 0 deletions
@@ -0,0 +1,5 @@
import test.*
fun box(): String {
return call()
}
@@ -0,0 +1,19 @@
package test
fun call() = inlineFun2 { stub()}
internal inline fun inlineFun2(p: () -> Unit): String {
p()
return inlineFun {
test()
}
}
private fun stub() = "fail"
private fun test() = "OK"
inline internal fun inlineFun(p: () -> String): String {
return p()
}
@@ -0,0 +1,5 @@
import test.*
fun box(): String {
return A().call()
}
@@ -0,0 +1,23 @@
package test
class A {
fun call() = inlineFun2 { stub() }
internal inline fun inlineFun2(p: () -> Unit): String {
p()
return inlineFun {
test()
}
}
private fun stub() = "fail"
private fun test() = "OK"
inline internal fun inlineFun(p: () -> String): String {
return p()
}
}
@@ -0,0 +1,5 @@
import test.*
fun box(): String {
return A().call();
}
@@ -0,0 +1,15 @@
@file:kotlin.jvm.JvmMultifileClass
@file:kotlin.jvm.JvmName("TestKt")
package test
private val prop = "O"
private fun test() = "K"
inline internal fun inlineFun(): String {
return prop + test()
}
class A () {
fun call() = inlineFun()
}
@@ -0,0 +1,4 @@
import test.*
fun box(): String {
return A().call();
}
@@ -0,0 +1,14 @@
package test
private val prop = "O"
private fun test() = "K"
inline internal fun inlineFun(): String {
return prop + test()
}
class A () {
fun call() = inlineFun()
}