tests: Update external tests (1.1.2-dev-393)
This commit is contained in:
@@ -0,0 +1,16 @@
|
||||
data class A(val a: Int, val b: Int)
|
||||
|
||||
fun box() : String
|
||||
{
|
||||
a@ val x = 1
|
||||
b@ fun a() = 2
|
||||
c@ val (z, z2) = A(1, 2)
|
||||
|
||||
if (x != 1) return "fail 1"
|
||||
|
||||
if (a() != 2) return "fail 2"
|
||||
|
||||
if (z != 1 || z2 != 2) return "fail 3"
|
||||
|
||||
return "OK"
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
val Int.getter: Int
|
||||
get() {
|
||||
return this@getter
|
||||
}
|
||||
|
||||
fun box(): String {
|
||||
val i = 1
|
||||
if (i.getter != 1) return "getter failed"
|
||||
|
||||
return "OK"
|
||||
}
|
||||
+13
@@ -0,0 +1,13 @@
|
||||
val Int.getter: Int
|
||||
get() {
|
||||
return {
|
||||
this@getter
|
||||
}.invoke()
|
||||
}
|
||||
|
||||
fun box(): String {
|
||||
val i = 1
|
||||
if (i.getter != 1) return "getter failed"
|
||||
|
||||
return "OK"
|
||||
}
|
||||
+28
@@ -0,0 +1,28 @@
|
||||
val Int.getter: Int
|
||||
get() {
|
||||
val extFun: Int.() -> Int = {
|
||||
this@getter
|
||||
}
|
||||
return this@getter.extFun()
|
||||
}
|
||||
|
||||
|
||||
var Int.setter: Int
|
||||
get() = 1
|
||||
set(i: Int) {
|
||||
val extFun: Int.() -> Int = {
|
||||
this@setter
|
||||
}
|
||||
this@setter.extFun()
|
||||
}
|
||||
|
||||
|
||||
fun box(): String {
|
||||
val i = 1
|
||||
if (i.getter != 1) return "getter failed"
|
||||
|
||||
i.setter = 1
|
||||
if (i.setter != 1) return "setter failed"
|
||||
|
||||
return "OK"
|
||||
}
|
||||
@@ -0,0 +1,19 @@
|
||||
interface Base {
|
||||
fun foo(): Int
|
||||
}
|
||||
|
||||
val Int.getter: Int
|
||||
get() {
|
||||
return object : Base {
|
||||
override fun foo(): Int {
|
||||
return this@getter
|
||||
}
|
||||
}.foo()
|
||||
}
|
||||
|
||||
fun box(): String {
|
||||
val i = 1
|
||||
if (i.getter != 1) return "getter failed"
|
||||
|
||||
return "OK"
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
class Test {
|
||||
val Int.innerGetter: Int
|
||||
get() {
|
||||
return this@innerGetter
|
||||
}
|
||||
|
||||
fun test(): Int {
|
||||
val i = 1
|
||||
if (i.innerGetter != 1) return 0
|
||||
return 1
|
||||
}
|
||||
}
|
||||
|
||||
fun box(): String {
|
||||
if (Test().test() != 1) return "inner getter or setter failed"
|
||||
return "OK"
|
||||
}
|
||||
Reference in New Issue
Block a user