Files
kotlin-fork/compiler/testData/codegen/box/enum/initEntriesInCompanionObject2.kt
T
Svyatoslav Kuzmich a99ea1d3ce [Wasm] Support enumValues and enumValueOf functions
^KT-57276 Fixed

Merge-request: KT-MR-9169
Merged-by: Svyatoslav Kuzmich <svyatoslav.kuzmich@jetbrains.com>
2023-03-13 14:13:31 +00:00

52 lines
732 B
Kotlin
Vendored

// IGNORE_BACKEND: JS
var l = ""
enum class Foo {
FOO,
BAR;
init {
l += "Foo.$name;"
}
companion object {
init {
l += "Foo.CO;"
}
val boo = 22
}
}
enum class Foo2 {
FOO,
BAR;
init {
l += "Foo2.$name;"
}
companion object {
init {
l += "Foo2.CO;"
}
val boo = 22
}
}
fun box(): String {
try {
enumValueOf<Foo>("NO")
} catch (e: Throwable) {
l += "caught;"
}
if (l != "Foo.FOO;Foo.BAR;Foo.CO;caught;") return "Failure 0: l = $l"
l = ""
enumValueOf<Foo2>("BAR")
if (l != "Foo2.FOO;Foo2.BAR;Foo2.CO;") return "Failure 1: l = $l"
return "OK"
}