Files
anzhela.sukhanova 82255d5ee8 [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>
2024-03-04 16:21:02 +00:00

71 lines
1.1 KiB
Kotlin
Vendored

// FIR_IDENTICAL
// TARGET_BACKEND: JVM
// FILE: Java1.java
public class Java1 {
private int a = 0;
public int getA(){
return 1;
}
public void setA(int t){
a = 100;
};
private boolean b = true;
public boolean isB(){
return b;
};
public void setB(boolean t){
b = t;
};
}
// FILE: Java2.java
public interface Java2 {
Object a = "1";
Object getA();
void setA(Object t);
boolean b = true;
boolean isB();
}
// FILE: 1.kt
abstract class A : Java1(), Java2
class B : Java1(), Java2 {
override fun setA(t: Any?) { }
}
abstract class C : Java1(), KotlinInterface
class D(override var a: Any, override val b: Boolean) : Java1(), KotlinInterface
interface KotlinInterface {
var a : Any
val b : Boolean
}
fun test(a: A, b: B, c: C, d: D){
a.a
a.setA(3)
a.setA("")
a.isB
a.isB = false
b.a
b.setA(3)
b.setA("")
b.isB
b.isB = false
c.a
c.b
c.isB
c.a = 1
c.isB = false
d.a
d.b
d.isB
d.a = 1
d.isB = false
}