[Test] KT-61360: add tests for the IrFakeOverrideBuilder
Add tests for fake overrides with focus on java interoperability Co-authored-by: Aleksandra Arsenteva <aleksandra.arsenteva@jetbrains.com>
This commit is contained in:
committed by
Space Team
parent
30aae741a6
commit
82255d5ee8
+74
@@ -0,0 +1,74 @@
|
||||
open class A {
|
||||
lateinit var b: Number
|
||||
get
|
||||
set
|
||||
|
||||
companion object Companion {
|
||||
private constructor() /* primary */ {
|
||||
super/*Any*/()
|
||||
/* <init>() */
|
||||
|
||||
}
|
||||
|
||||
const val a: Int
|
||||
field = 0
|
||||
get
|
||||
|
||||
}
|
||||
|
||||
constructor() /* primary */ {
|
||||
super/*Any*/()
|
||||
/* <init>() */
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
class B : Java1 {
|
||||
constructor() /* primary */ {
|
||||
super/*Java1*/()
|
||||
/* <init>() */
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
class C : A, Java2 {
|
||||
constructor() /* primary */ {
|
||||
super/*A*/()
|
||||
/* <init>() */
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
abstract class D : A, Java3 {
|
||||
constructor() /* primary */ {
|
||||
super/*A*/()
|
||||
/* <init>() */
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
interface KotlinInterface {
|
||||
abstract var a: Int
|
||||
abstract get
|
||||
abstract set
|
||||
|
||||
abstract var b: Number
|
||||
abstract get
|
||||
abstract set
|
||||
|
||||
}
|
||||
|
||||
fun test(b: B, c: C, d: D) {
|
||||
b.<set-b>(<set-?> = 3)
|
||||
b.<get-b>() /*~> Unit */
|
||||
c.<set-b>(<set-?> = 4)
|
||||
c.<get-b>() /*~> Unit */
|
||||
d.<set-a>(<set-?> = 2)
|
||||
d.<set-b>(<set-?> = 7)
|
||||
d.<get-a>() /*~> Unit */
|
||||
d.<get-b>() /*~> Unit */
|
||||
}
|
||||
Reference in New Issue
Block a user