FirNotImplementedOverrideChecker: check also anonymous objects / enums

This commit is contained in:
Mikhail Glukhikh
2021-03-24 11:23:59 +03:00
parent 82b8cc333e
commit 449a79151a
19 changed files with 44 additions and 64 deletions
@@ -33,7 +33,7 @@ class Case2Outer {
// TESTCASE NUMBER: 3
fun case3() {
object : CaseOuter.CaseBase() {}.outerFoo()
<!ABSTRACT_CLASS_MEMBER_NOT_IMPLEMENTED!>object<!> : CaseOuter.CaseBase() {}.outerFoo()
}
<!ABSTRACT_CLASS_MEMBER_NOT_IMPLEMENTED!>class B<!>() : CaseOuter.CaseBase() {}
@@ -44,7 +44,7 @@ fun case1() {
* NOTE: property is not implemented
*/
fun case2() {
val impl = object : Base() {
val impl = <!ABSTRACT_CLASS_MEMBER_NOT_IMPLEMENTED!>object<!> : Base() {
override var b: Any
get() = TODO()
set(value) {}
@@ -71,7 +71,7 @@ fun case2() {
*/
fun case3() {
val impl = object : Base() {
val impl = <!ABSTRACT_CLASS_MEMBER_NOT_IMPLEMENTED!>object<!> : Base() {
override var b: Any
get() = TODO()
set(value) {}
@@ -44,7 +44,7 @@ class Case2() {
abstract inner class Impl(override val a: CharSequence) : MainClass.Base3(a) {}
fun boo() {
val impl = object : Impl("a") {
val impl = <!ABSTRACT_CLASS_MEMBER_NOT_IMPLEMENTED!>object<!> : Impl("a") {
override fun foo(): CharSequence = "foo"
}
}
@@ -65,7 +65,7 @@ fun case3() {
val v = Case3()
v.boo(true)
val o = object : BaseKotlin() {}
val o = <!INVISIBLE_ABSTRACT_MEMBER_FROM_SUPER!>object<!> : BaseKotlin() {}
}
/*
@@ -78,6 +78,6 @@ abstract class AbstractClassCase4 : BaseKotlin() {}
fun case4() {
val v = Case4()
v.boo(true)
val o = object : AbstractClassCase4() {}
val o = <!INVISIBLE_ABSTRACT_MEMBER_FROM_SUPER!>object<!> : AbstractClassCase4() {}
}
@@ -59,7 +59,7 @@ import libModule.*
// TESTCASE NUMBER: 2
class KotlinClassWithAbstractJavaClass() {
fun foo() {
val baseJava1 = object : BaseJava1() {}
val baseKotlin = object : BaseKotlin1() {}
val baseJava1 = <!INVISIBLE_ABSTRACT_MEMBER_FROM_SUPER!>object<!> : BaseJava1() {}
val baseKotlin = <!INVISIBLE_ABSTRACT_MEMBER_FROM_SUPER!>object<!> : BaseKotlin1() {}
}
}