Files
kotlin-fork/compiler/testData/codegen/box/when/enumOptimization/enumInsideClassObject.kt
T
2021-10-06 09:23:50 +00:00

35 lines
884 B
Kotlin
Vendored

// WITH_RUNTIME
// CHECK_CASES_COUNT: function=foo count=3 TARGET_BACKENDS=JS
// CHECK_CASES_COUNT: function=foo count=0 IGNORED_BACKENDS=JS
// CHECK_IF_COUNT: function=foo count=0
import kotlin.test.assertEquals
class A {
companion object {
enum class Season {
WINTER,
SPRING,
SUMMER,
AUTUMN
}
}
}
fun foo(x : A.Companion.Season) : String {
return when (x) {
A.Companion.Season.WINTER -> "winter"
A.Companion.Season.SPRING -> "spring"
A.Companion.Season.SUMMER -> "summer"
else -> "other"
}
}
fun box() : String {
assertEquals("winter", foo(A.Companion.Season.WINTER))
assertEquals("spring", foo(A.Companion.Season.SPRING))
assertEquals("summer", foo(A.Companion.Season.SUMMER))
assertEquals("other", foo(A.Companion.Season.AUTUMN))
return "OK"
}