a4c7619c89
Without this commit, JVM name mapping logic in BE does not work for FIR, because FIR cannot use old BuiltInsPackageFragmentImpl descriptor. In this commit we add our own implementation thus fixing a pack of FIR black box tests.
35 lines
926 B
Kotlin
Vendored
35 lines
926 B
Kotlin
Vendored
// IGNORE_BACKEND: JS_IR
|
|
// TODO: muted automatically, investigate should it be ran for JS or not
|
|
// IGNORE_BACKEND: JS, NATIVE
|
|
|
|
// WITH_RUNTIME
|
|
|
|
enum class E {
|
|
VALUE,
|
|
VALUE2
|
|
}
|
|
|
|
class C(val nums: Map<E, Int>) {
|
|
val normalizedNums = loadNormalizedNums()
|
|
|
|
private fun loadNormalizedNums(): Map<E, Float> {
|
|
val vals = nums.values
|
|
val min = vals.min()!!
|
|
val max = vals.max()!!
|
|
val rangeDiff = (max - min).toFloat()
|
|
val normalizedNums = nums.map { kvp ->
|
|
val (e, num) = kvp
|
|
//val e = kvp.key
|
|
//val num = kvp.value
|
|
val normalized = (num - min) / rangeDiff
|
|
Pair(e, normalized)
|
|
}.toMap()
|
|
return normalizedNums
|
|
}
|
|
}
|
|
|
|
fun box(): String {
|
|
val res = C(hashMapOf(E.VALUE to 11, E.VALUE2 to 12)).normalizedNums.values.sorted().joinToString()
|
|
return if ("0.0, 1.0" == res) "OK" else "fail $res"
|
|
}
|