Files
kotlin-fork/compiler/testData/codegen/box/jvmStatic/propertyAccess.kt
T
Ilya Matveev a5e4e0284e Mute some box tests for native backend
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.
2017-03-10 19:59:37 +03:00

51 lines
956 B
Kotlin
Vendored

// TODO: muted automatically, investigate should it be ran for JS or not
// IGNORE_BACKEND: JS, NATIVE
// WITH_RUNTIME
var holder = ""
fun getA(): A {
holder += "getA()"
return A
}
object A {
@JvmStatic var a: Int = 1
var b: Int = 1
@JvmStatic get
var c: Int = 1
@JvmStatic set
}
fun box(): String {
if (getA().a != 1 || holder != "getA()") return "fail 1: $holder"
holder = ""
if (getA().b != 1 || holder != "getA()") return "fail 2: $holder"
holder = ""
if (getA().c != 1 || holder != "getA()") return "fail 3: $holder"
holder = ""
getA().a = 2
if (getA().a != 2 || holder != "getA()getA()") return "fail 1: $holder"
holder = ""
getA().b = 2
if (getA().b != 2 || holder != "getA()getA()") return "fail 2: $holder"
holder = ""
getA().c = 2
if (getA().c != 2 || holder != "getA()getA()") return "fail 3: $holder"
holder = ""
return "OK"
}