[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
Vendored
+117
@@ -0,0 +1,117 @@
|
||||
class A : LinkedList<Int>, List<Int> {
|
||||
constructor() /* primary */ {
|
||||
super/*LinkedList*/<@FlexibleNullability Int?>()
|
||||
/* <init>() */
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
class B : LinkedList<Int>, List<Int> {
|
||||
constructor() /* primary */ {
|
||||
super/*LinkedList*/<@FlexibleNullability Int?>()
|
||||
/* <init>() */
|
||||
|
||||
}
|
||||
|
||||
override fun addFirst(e: Int?) {
|
||||
}
|
||||
|
||||
override fun remove(): Int {
|
||||
return 1
|
||||
}
|
||||
|
||||
override fun remove(element: Int): Boolean {
|
||||
return true
|
||||
}
|
||||
|
||||
override fun removeAt(index: Int): Int {
|
||||
return 1
|
||||
}
|
||||
|
||||
override val size: Int
|
||||
override get(): Int {
|
||||
return 2
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
class C : LinkedList<Int?>, MutableList<Int?> {
|
||||
constructor() /* primary */ {
|
||||
super/*LinkedList*/<@FlexibleNullability Int?>()
|
||||
/* <init>() */
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
class D : LinkedList<Int?>, MutableList<Int?> {
|
||||
constructor() /* primary */ {
|
||||
super/*LinkedList*/<@FlexibleNullability Int?>()
|
||||
/* <init>() */
|
||||
|
||||
}
|
||||
|
||||
override fun addLast(e: Int?) {
|
||||
}
|
||||
|
||||
override operator fun get(index: Int): Int? {
|
||||
return 2
|
||||
}
|
||||
|
||||
override fun remove(): Int? {
|
||||
return 2
|
||||
}
|
||||
|
||||
override fun remove(element: Int?): Boolean {
|
||||
return true
|
||||
}
|
||||
|
||||
override fun removeAt(index: Int): Int? {
|
||||
return 2
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
fun test(a: A, b: B, c: C, d: D) {
|
||||
a.<get-size>() /*~> Unit */
|
||||
a.add(element = 1) /*~> Unit */
|
||||
a.get(index = 0) /*~> Unit */
|
||||
a.remove() /*~> Unit */
|
||||
a.removeAt(p0 = 1) /*~> Unit */
|
||||
a.remove(element = 1) /*~> Unit */
|
||||
a.addFirst(p0 = 1)
|
||||
a.addLast(p0 = null)
|
||||
a.removeFirst() /*~> Unit */
|
||||
a.removeLast() /*~> Unit */
|
||||
b.<get-size>() /*~> Unit */
|
||||
b.add(element = 1) /*~> Unit */
|
||||
b.get(index = 0) /*~> Unit */
|
||||
b.remove() /*~> Unit */
|
||||
b.removeAt(index = 1) /*~> Unit */
|
||||
b.remove(element = 1) /*~> Unit */
|
||||
b.addFirst(e = 1)
|
||||
b.addLast(p0 = null)
|
||||
b.removeFirst() /*~> Unit */
|
||||
b.removeLast() /*~> Unit */
|
||||
c.<get-size>() /*~> Unit */
|
||||
c.add(element = 1) /*~> Unit */
|
||||
c.get(index = 0) /*~> Unit */
|
||||
c.remove() /*~> Unit */
|
||||
c.removeAt(p0 = 1) /*~> Unit */
|
||||
c.remove(element = 1) /*~> Unit */
|
||||
c.addFirst(p0 = 1)
|
||||
c.addLast(p0 = null)
|
||||
c.removeFirst() /*~> Unit */
|
||||
c.removeLast() /*~> Unit */
|
||||
d.<get-size>() /*~> Unit */
|
||||
d.add(element = 1) /*~> Unit */
|
||||
d.get(index = 0) /*~> Unit */
|
||||
d.remove() /*~> Unit */
|
||||
d.removeAt(index = 1) /*~> Unit */
|
||||
d.remove(element = 1) /*~> Unit */
|
||||
d.addFirst(p0 = 1)
|
||||
d.addLast(e = null)
|
||||
d.removeFirst() /*~> Unit */
|
||||
d.removeLast() /*~> Unit */
|
||||
}
|
||||
Reference in New Issue
Block a user