82255d5ee8
Add tests for fake overrides with focus on java interoperability Co-authored-by: Aleksandra Arsenteva <aleksandra.arsenteva@jetbrains.com>
126 lines
2.6 KiB
Kotlin
Vendored
126 lines
2.6 KiB
Kotlin
Vendored
abstract class A : Java1 {
|
|
constructor() /* primary */ {
|
|
super/*Java1*/()
|
|
/* <init>() */
|
|
|
|
}
|
|
|
|
}
|
|
|
|
abstract class B : Java1 {
|
|
constructor() /* primary */ {
|
|
super/*Java1*/()
|
|
/* <init>() */
|
|
|
|
}
|
|
|
|
override fun firstEntry(): MutableEntry<Any, Any> {
|
|
return CHECK_NOT_NULL<Nothing>(arg0 = null)
|
|
}
|
|
|
|
override fun putFirst(k: Any?, v: Any?): Any {
|
|
return ""
|
|
}
|
|
|
|
override fun reversed(): SequencedMap<Any, Any>? {
|
|
return CHECK_NOT_NULL<Nothing>(arg0 = null)
|
|
}
|
|
|
|
}
|
|
|
|
abstract class C : Java1, Java2 {
|
|
constructor() /* primary */ {
|
|
super/*Java1*/()
|
|
/* <init>() */
|
|
|
|
}
|
|
|
|
override fun putFirst(k: Any?, v: Any?): Any {
|
|
return ""
|
|
}
|
|
|
|
}
|
|
|
|
abstract class D : Java2, KotlinInterface {
|
|
constructor() /* primary */ {
|
|
super/*Any*/()
|
|
/* <init>() */
|
|
|
|
}
|
|
|
|
override fun putFirst(k: Any?, v: Any?): Any {
|
|
return ""
|
|
}
|
|
|
|
}
|
|
|
|
abstract class E : Java3 {
|
|
constructor() /* primary */ {
|
|
super/*Java3*/()
|
|
/* <init>() */
|
|
|
|
}
|
|
|
|
}
|
|
|
|
abstract class F : Java3 {
|
|
override val size: Int
|
|
field = size
|
|
override get
|
|
|
|
constructor(size: Int) /* primary */ {
|
|
super/*Java3*/()
|
|
/* <init>() */
|
|
|
|
}
|
|
|
|
override fun remove(key: Any?): Any? {
|
|
return ""
|
|
}
|
|
|
|
override fun reversed(): SequencedMap<Any, Any> {
|
|
return CHECK_NOT_NULL<Nothing>(arg0 = null)
|
|
}
|
|
|
|
}
|
|
|
|
interface KotlinInterface : SequencedMap<Any, Any> {
|
|
}
|
|
|
|
fun test(a: A, b: B, c: C, d: D, e: E, f: F) {
|
|
a.putFirst(p0 = 1, p1 = null) /*~> Unit */
|
|
a.firstEntry() /*~> Unit */
|
|
a.putLast(p0 = null, p1 = 2) /*~> Unit */
|
|
a.lastEntry() /*~> Unit */
|
|
a.pollFirstEntry() /*~> Unit */
|
|
a.reversed() /*~> Unit */
|
|
a.sequencedKeySet() /*~> Unit */
|
|
b.putFirst(k = 1, v = null) /*~> Unit */
|
|
b.firstEntry() /*~> Unit */
|
|
b.putLast(p0 = null, p1 = 2) /*~> Unit */
|
|
b.lastEntry() /*~> Unit */
|
|
b.pollFirstEntry() /*~> Unit */
|
|
b.reversed() /*~> Unit */
|
|
b.sequencedKeySet() /*~> Unit */
|
|
c.putFirst(k = 1, v = null) /*~> Unit */
|
|
c.firstEntry() /*~> Unit */
|
|
c.putLast(p0 = null, p1 = 2) /*~> Unit */
|
|
c.lastEntry() /*~> Unit */
|
|
c.reversed() /*~> Unit */
|
|
d.putFirst(k = 1, v = null) /*~> Unit */
|
|
d.firstEntry() /*~> Unit */
|
|
d.putLast(p0 = null, p1 = 1) /*~> Unit */
|
|
d.lastEntry() /*~> Unit */
|
|
d.reversed() /*~> Unit */
|
|
e.putFirst(p0 = 1, p1 = null) /*~> Unit */
|
|
e.firstEntry() /*~> Unit */
|
|
e.putLast(p0 = null, p1 = 2) /*~> Unit */
|
|
e.lastEntry() /*~> Unit */
|
|
e.reversed() /*~> Unit */
|
|
f.putFirst(p0 = 1, p1 = null) /*~> Unit */
|
|
f.firstEntry() /*~> Unit */
|
|
f.putLast(p0 = null, p1 = 2) /*~> Unit */
|
|
f.lastEntry() /*~> Unit */
|
|
f.reversed() /*~> Unit */
|
|
}
|