IC tests: add infrastructure for K1/K2 lookups comparison
Adapt lookup tests to allow running K1 and K2 on the same testdata and compare the lookups recorded.
This commit is contained in:
committed by
Space Team
parent
684d0b8690
commit
1989e8f094
+69
@@ -0,0 +1,69 @@
|
||||
package foo
|
||||
|
||||
/*p:foo*/class A {
|
||||
val a = 1
|
||||
var b = ""
|
||||
|
||||
val c: /*p:foo p:foo.A p:foo.A.Companion*/String
|
||||
get() = /*p:foo.A*/b
|
||||
|
||||
var d: /*p:foo p:foo.A p:foo.A.Companion*/String = "ddd"
|
||||
get() = field
|
||||
set(v) { field = v }
|
||||
|
||||
fun foo() {
|
||||
/*p:foo.A*/a
|
||||
/*p:foo.A*/foo()
|
||||
/*p:foo(A)*/this./*p:foo.A*/a
|
||||
/*p:foo(A)*/this./*p:foo.A*/foo()
|
||||
/*p:foo p:foo.A p:foo.A(getBAZ) p:foo.A(getBaz) p:foo.A.Companion p:java.lang p:kotlin p:kotlin.annotation p:kotlin.collections p:kotlin.comparisons p:kotlin.io p:kotlin.jvm p:kotlin.ranges p:kotlin.sequences p:kotlin.text*/baz()
|
||||
/*p:foo p:foo.A p:foo.A.Companion p:java.lang p:kotlin p:kotlin.annotation p:kotlin.collections p:kotlin.comparisons p:kotlin.io p:kotlin.jvm p:kotlin.ranges p:kotlin.sequences p:kotlin.text*/Companion./*p:foo.A.Companion*/a
|
||||
/*p:foo p:foo.A p:foo.A.Companion p:java.lang p:kotlin p:kotlin.annotation p:kotlin.collections p:kotlin.comparisons p:kotlin.io p:kotlin.jvm p:kotlin.ranges p:kotlin.sequences p:kotlin.text*/O./*p:foo.A.O*/v = "OK"
|
||||
}
|
||||
|
||||
class B {
|
||||
val a = 1
|
||||
|
||||
companion object CO {
|
||||
fun bar(a: /*p:foo p:foo.A p:foo.A.B p:foo.A.B.CO p:foo.A.Companion*/Int) {}
|
||||
}
|
||||
}
|
||||
|
||||
inner class C
|
||||
|
||||
companion object {
|
||||
val a = 1
|
||||
fun baz() {}
|
||||
}
|
||||
|
||||
object O {
|
||||
var v = "vvv"
|
||||
}
|
||||
}
|
||||
|
||||
/*p:foo*/interface I {
|
||||
var a: /*p:foo p:foo.I*/Int
|
||||
fun foo()
|
||||
|
||||
class NI
|
||||
}
|
||||
|
||||
/*p:foo*/object Obj : /*p:foo*/I {
|
||||
override var a = 1
|
||||
override fun foo() {}
|
||||
val b = 1
|
||||
fun bar(): /*p:foo p:foo.Obj*/I = /*p:foo(I) p:kotlin(Nothing)*/null as /*p:foo p:foo.Obj*/I
|
||||
}
|
||||
|
||||
/*p:foo*/enum class E {
|
||||
X,
|
||||
Y;
|
||||
|
||||
val a = 1
|
||||
fun foo() {
|
||||
/*p:foo.E*/a
|
||||
/*p:foo p:foo.E p:java.lang p:kotlin p:kotlin.annotation p:kotlin.collections p:kotlin.comparisons p:kotlin.io p:kotlin.jvm p:kotlin.ranges p:kotlin.sequences p:kotlin.text*/Y./*p:foo.E*/a
|
||||
/*p:foo.E*/foo()
|
||||
/*p:foo p:foo.E p:java.lang p:kotlin p:kotlin.annotation p:kotlin.collections p:kotlin.comparisons p:kotlin.io p:kotlin.jvm p:kotlin.ranges p:kotlin.sequences p:kotlin.text*/X./*p:foo.E*/foo()
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user