[tests] Change builder inference tests in accordance with new K2 BI diagnostics

Related to KT-59369, KT-59390
This commit is contained in:
Stanislav Ruban
2023-12-02 17:41:55 +01:00
committed by Space Team
parent da0c3090a9
commit 7515efc52c
23 changed files with 37 additions and 134 deletions
@@ -1,27 +0,0 @@
// ISSUE: KT-60291
// CHECK_TYPE_WITH_EXACT
fun test() {
val buildee = when ("") {
"true" -> build { setTypeVariable(TargetType()) }
"false" -> build {}
else -> Buildee()
}
// exact type equality check — turns unexpected compile-time behavior into red code
// considered to be non-user-reproducible code for the purposes of these tests
checkExactType<Buildee<TargetType>>(buildee)
}
class TargetType
class Buildee<TV> {
fun setTypeVariable(value: TV) { storage = value }
private var storage: TV = null!!
}
fun <PTV> build(instructions: Buildee<PTV>.() -> Unit): Buildee<PTV> {
return Buildee<PTV>().apply(instructions)
}