tests: Update external tests (1.1.2-dev-393)

This commit is contained in:
Ilya Matveev
2017-03-13 12:38:08 +03:00
committed by ilmat192
parent ac56fccb15
commit bc074e6d39
3178 changed files with 22396 additions and 696 deletions
@@ -0,0 +1,43 @@
// FILE: 1.kt
class My
inline fun <T, R> T.perform(job: (T)-> R) : R {
return job(this)
}
inline fun My.someWork(job: (String) -> Any): Unit {
this.perform {
job("OK")
}
}
inline fun My.doWork (closure : (param : String) -> Unit) : Unit {
this.someWork(closure)
}
inline fun My.doPerform (closure : (param : My) -> Int) : Int {
return perform(closure)
}
// FILE: 2.kt
fun test1(): String {
val inlineX = My()
var d = "";
inlineX.doWork({ z: String -> d = z; z})
return d
}
fun test2(): Int {
val inlineX = My()
return inlineX.perform({ z: My -> 11})
}
fun box(): String {
if (test1() != "OK") return "test1: ${test1()}"
if (test2() != 11) return "test1: ${test2()}"
return "OK"
}