Treat SEALED_SUBCLASS_FQ_NAME_LIST change as a class signature change

#KT-19580
This commit is contained in:
Alexey Tsvetkov
2017-08-09 22:15:38 +03:00
parent 856276328e
commit 6354d9d54f
39 changed files with 440 additions and 18 deletions
@@ -0,0 +1,9 @@
package test
class Base {
class Nested1 {
class Nested2 {
fun added() {}
}
}
}
@@ -0,0 +1,9 @@
package test
class Base {
class Nested1 {
class Nested2 {
fun removed() {}
}
}
}
@@ -0,0 +1,3 @@
PROTO DIFFERENCE in test/Base.Nested1.Nested2: FUNCTION_LIST
CHANGES in test/Base.Nested1.Nested2: MEMBERS
[added, removed]
@@ -0,0 +1,7 @@
package test
open class Base {
class Nested1 {
class Nested2
}
}
@@ -0,0 +1,7 @@
package test
open class Base {
class Nested1 {
class Nested2 : Base()
}
}
@@ -0,0 +1,2 @@
PROTO DIFFERENCE in test/Base.Nested1.Nested2: SUPERTYPE_LIST
CHANGES in test/Base.Nested1.Nested2: CLASS_SIGNATURE
@@ -0,0 +1,9 @@
package test
sealed class Base1
class Impl1 : Base1()
class Impl11 : Base1()
sealed class Base2
class Impl2 : Base2()
class Impl22 : Base2()
@@ -0,0 +1,8 @@
package test
sealed class Base1
class Impl1 : Base1()
sealed class Base2
class Impl2 : Base2()
class Impl22
@@ -0,0 +1,7 @@
ADDED test/Impl11
PROTO DIFFERENCE in test/Base1: SEALED_SUBCLASS_FQ_NAME_LIST
CHANGES in test/Base1: CLASS_SIGNATURE
PROTO DIFFERENCE in test/Base2: SEALED_SUBCLASS_FQ_NAME_LIST
CHANGES in test/Base2: CLASS_SIGNATURE
PROTO DIFFERENCE in test/Impl22: SUPERTYPE_LIST
CHANGES in test/Impl22: CLASS_SIGNATURE
@@ -0,0 +1,8 @@
package test
sealed class Base1
class Impl1 : Base1()
sealed class Base2
class Impl2 : Base2()
class Impl22
@@ -0,0 +1,9 @@
package test
sealed class Base1
class Impl1 : Base1()
class Impl11 : Base1()
sealed class Base2
class Impl2 : Base2()
class Impl22 : Base2()
@@ -0,0 +1,7 @@
REMOVED test/Impl11
PROTO DIFFERENCE in test/Base1: SEALED_SUBCLASS_FQ_NAME_LIST
CHANGES in test/Base1: CLASS_SIGNATURE
PROTO DIFFERENCE in test/Base2: SEALED_SUBCLASS_FQ_NAME_LIST
CHANGES in test/Base2: CLASS_SIGNATURE
PROTO DIFFERENCE in test/Impl22: SUPERTYPE_LIST
CHANGES in test/Impl22: CLASS_SIGNATURE
@@ -0,0 +1,12 @@
package test
sealed class Base1 {
class Nested1 : Base1()
class Nested2 : Base1()
}
sealed class Base2 {
class Nested1 : Base2()
class Nested2 : Base2()
}
@@ -0,0 +1,11 @@
package test
sealed class Base1 {
class Nested1 : Base1()
}
sealed class Base2 {
class Nested1 : Base2()
class Nested2
}
@@ -0,0 +1,8 @@
ADDED test/Base1.Nested2
PROTO DIFFERENCE in test/Base1: NESTED_CLASS_NAME_LIST, SEALED_SUBCLASS_FQ_NAME_LIST
CHANGES in test/Base1: CLASS_SIGNATURE, MEMBERS
[Nested2]
PROTO DIFFERENCE in test/Base2: SEALED_SUBCLASS_FQ_NAME_LIST
CHANGES in test/Base2: CLASS_SIGNATURE
PROTO DIFFERENCE in test/Base2.Nested2: SUPERTYPE_LIST
CHANGES in test/Base2.Nested2: CLASS_SIGNATURE
@@ -0,0 +1,22 @@
package test
sealed class Base1 {
sealed class Nested1 : Base1() {
sealed class Nested2 : Nested1() {
class Nested3 : Nested2()
}
}
}
sealed class Base2 {
sealed class Nested1 : Base2() {
class Nested2 : Nested1()
class Nested3 : Nested1()
}
}
sealed class Base3 {
sealed class Nested1 : Base3() {
class Nested2 : Nested1()
}
}
@@ -0,0 +1,19 @@
package test
sealed class Base1 {
sealed class Nested1 : Base1() {
sealed class Nested2 : Nested1()
}
}
sealed class Base2 {
sealed class Nested1 : Base2() {
class Nested2 : Nested1()
}
}
sealed class Base3 {
sealed class Nested1 : Base3() {
class Nested2
}
}
@@ -0,0 +1,12 @@
ADDED test/Base1.Nested1.Nested2.Nested3
ADDED test/Base2.Nested1.Nested3
PROTO DIFFERENCE in test/Base1.Nested1.Nested2: NESTED_CLASS_NAME_LIST, SEALED_SUBCLASS_FQ_NAME_LIST
CHANGES in test/Base1.Nested1.Nested2: CLASS_SIGNATURE, MEMBERS
[Nested3]
PROTO DIFFERENCE in test/Base2.Nested1: NESTED_CLASS_NAME_LIST, SEALED_SUBCLASS_FQ_NAME_LIST
CHANGES in test/Base2.Nested1: CLASS_SIGNATURE, MEMBERS
[Nested3]
PROTO DIFFERENCE in test/Base3.Nested1: SEALED_SUBCLASS_FQ_NAME_LIST
CHANGES in test/Base3.Nested1: CLASS_SIGNATURE
PROTO DIFFERENCE in test/Base3.Nested1.Nested2: SUPERTYPE_LIST
CHANGES in test/Base3.Nested1.Nested2: CLASS_SIGNATURE
@@ -0,0 +1,11 @@
package test
sealed class Base1 {
class Nested1 : Base1()
}
sealed class Base2 {
class Nested1 : Base2()
class Nested2
}
@@ -0,0 +1,12 @@
package test
sealed class Base1 {
class Nested1 : Base1()
class Nested2 : Base1()
}
sealed class Base2 {
class Nested1 : Base2()
class Nested2 : Base2()
}
@@ -0,0 +1,8 @@
REMOVED test/Base1.Nested2
PROTO DIFFERENCE in test/Base1: NESTED_CLASS_NAME_LIST, SEALED_SUBCLASS_FQ_NAME_LIST
CHANGES in test/Base1: CLASS_SIGNATURE, MEMBERS
[Nested2]
PROTO DIFFERENCE in test/Base2: SEALED_SUBCLASS_FQ_NAME_LIST
CHANGES in test/Base2: CLASS_SIGNATURE
PROTO DIFFERENCE in test/Base2.Nested2: SUPERTYPE_LIST
CHANGES in test/Base2.Nested2: CLASS_SIGNATURE