tests for comparison of changes in classes

This commit is contained in:
Michael Nedzelsky
2015-08-05 16:38:19 +03:00
parent df283c8f02
commit ae7cc8e430
60 changed files with 953 additions and 0 deletions
@@ -0,0 +1,20 @@
package test
class ClassWithAddedCompanionObject {
public fun unchangedFun() {}
companion object {}
}
class ClassWithRemovedCompanionObject {
public fun unchangedFun() {}
}
class ClassWithChangedCompanionObject {
public fun unchangedFun() {}
companion object SecondName {}
}
class ClassWithChangedVisibilityForCompanionObject {
public fun unchangedFun() {}
private companion object {}
}
@@ -0,0 +1,21 @@
package test
class ClassWithAddedCompanionObject {
public fun unchangedFun() {}
}
class ClassWithRemovedCompanionObject {
public fun unchangedFun() {}
companion object {}
}
class ClassWithChangedCompanionObject {
public fun unchangedFun() {}
companion object FirstName {}
}
class ClassWithChangedVisibilityForCompanionObject {
public fun unchangedFun() {}
public companion object {}
}
@@ -0,0 +1,12 @@
REMOVED: class ClassWithChangedCompanionObject$FirstName.class
REMOVED: class ClassWithRemovedCompanionObject$Companion.class
ADDED: class ClassWithAddedCompanionObject$Companion.class
ADDED: class ClassWithChangedCompanionObject$SecondName.class
changes in test/ClassWithAddedCompanionObject: MEMBERS
[Companion]
changes in test/ClassWithChangedCompanionObject: MEMBERS
[FirstName, SecondName]
changes in test/ClassWithChangedVisibilityForCompanionObject.Companion: CLASS_SIGNATURE
changes in test/ClassWithChangedVisibilityForCompanionObject: NONE
changes in test/ClassWithRemovedCompanionObject: MEMBERS
[Companion]
@@ -0,0 +1,25 @@
package test
class ClassWithPrimaryConstructorChanged constructor(arg: String) {
public fun unchangedFun() {}
}
class ClassWithPrimaryConstructorVisibilityChanged private constructor() {
public fun unchangedFun() {}
}
class ClassWithSecondaryConstructorsAdded() {
constructor(arg: Int): this() {}
constructor(arg: String): this() {}
public fun unchangedFun() {}
}
class ClassWithSecondaryConstructorsRemoved() {
public fun unchangedFun() {}
}
class ClassWithSecondaryConstructorVisibilityChanged() {
private constructor(arg: Int): this() {}
public fun unchangedFun() {}
}
@@ -0,0 +1,24 @@
package test
class ClassWithPrimaryConstructorChanged constructor() {
public fun unchangedFun() {}
}
class ClassWithPrimaryConstructorVisibilityChanged constructor() {
public fun unchangedFun() {}
}
class ClassWithSecondaryConstructorsAdded {
public fun unchangedFun() {}
}
class ClassWithSecondaryConstructorsRemoved() {
public constructor(arg: Int): this() {}
constructor(arg: String): this() {}
public fun unchangedFun() {}
}
class ClassWithSecondaryConstructorVisibilityChanged() {
protected constructor(arg: Int): this() {}
public fun unchangedFun() {}
}
@@ -0,0 +1,10 @@
changes in test/ClassWithPrimaryConstructorChanged: MEMBERS
[<init>]
changes in test/ClassWithPrimaryConstructorVisibilityChanged: MEMBERS
[<init>]
changes in test/ClassWithSecondaryConstructorVisibilityChanged: MEMBERS
[<init>]
changes in test/ClassWithSecondaryConstructorsAdded: MEMBERS
[<init>]
changes in test/ClassWithSecondaryConstructorsRemoved: MEMBERS
[<init>]
@@ -0,0 +1,31 @@
package test
class ClassWithFunAdded {
fun added() {}
public fun unchangedFun() {}
}
class ClassWithFunRemoved {
public fun unchangedFun() {}
}
class ClassWithValAndFunAddedAndRemoved {
public val valAdded: String = ""
fun funAdded() {}
public fun unchangedFun() {}
}
class ClassWithValConvertedToVar {
public var value: Int = 10
public fun unchangedFun() {}
}
class ClassWithChangedVisiblityForFun1 {
private fun foo() {}
public fun unchangedFun() {}
}
class ClassWithChangedVisiblityForFun2 {
protected fun foo() {}
public fun unchangedFun() {}
}
@@ -0,0 +1,33 @@
package test
class ClassWithFunAdded {
public fun unchangedFun() {}
}
class ClassWithFunRemoved {
fun removed() {}
public fun unchangedFun() {}
}
class ClassWithValAndFunAddedAndRemoved {
public val valRemoved: Int = 10
fun funRemoved() {}
public fun unchangedFun() {}
}
class ClassWithValConvertedToVar {
public val value: Int = 10
public fun unchangedFun() {}
}
class ClassWithChangedVisiblityForFun1 {
protected fun foo() {}
public fun unchangedFun() {}
}
class ClassWithChangedVisiblityForFun2 {
private fun foo() {}
public fun unchangedFun() {}
}
@@ -0,0 +1,12 @@
changes in test/ClassWithChangedVisiblityForFun1: MEMBERS
[foo]
changes in test/ClassWithChangedVisiblityForFun2: MEMBERS
[foo]
changes in test/ClassWithFunAdded: MEMBERS
[added]
changes in test/ClassWithFunRemoved: MEMBERS
[removed]
changes in test/ClassWithValAndFunAddedAndRemoved: MEMBERS
[funAdded, funRemoved, valAdded, valRemoved]
changes in test/ClassWithValConvertedToVar: MEMBERS
[value]
@@ -0,0 +1,15 @@
package test
class ClassWithNestedClasses {
class NestedClassAdded {}
inner class InnerClass {}
inner class InnerClassAdded {}
public fun unchangedFun() {}
}
class ClassWithChangedVisibilityForNestedClasses {
private class NestedClass {}
protected inner class InnerClass {}
public fun unchangedFun() {}
}
@@ -0,0 +1,14 @@
package test
class ClassWithNestedClasses {
class NestedClassRemoved {}
inner class InnerClass {}
public fun unchangedFun() {}
}
class ClassWithChangedVisibilityForNestedClasses {
class NestedClass {}
inner class InnerClass {}
public fun unchangedFun() {}
}
@@ -0,0 +1,9 @@
REMOVED: class ClassWithNestedClasses$NestedClassRemoved.class
ADDED: class ClassWithNestedClasses$InnerClassAdded.class
ADDED: class ClassWithNestedClasses$NestedClassAdded.class
changes in test/ClassWithChangedVisibilityForNestedClasses.InnerClass: CLASS_SIGNATURE
changes in test/ClassWithChangedVisibilityForNestedClasses.NestedClass: CLASS_SIGNATURE
changes in test/ClassWithChangedVisibilityForNestedClasses: NONE
changes in test/ClassWithNestedClasses.InnerClass: NONE
changes in test/ClassWithNestedClasses: MEMBERS
[InnerClassAdded, NestedClassAdded, NestedClassRemoved]
@@ -0,0 +1,7 @@
package test
enum class EnumClassWithChanges {
CONST_1,
CONST_3,
CONST_4
}
@@ -0,0 +1,6 @@
package test
enum class EnumClassWithChanges {
CONST_1,
CONST_2
}
@@ -0,0 +1,2 @@
changes in test/EnumClassWithChanges: MEMBERS
[CONST_2, CONST_3, CONST_4]
@@ -0,0 +1,11 @@
package test
public fun unchangedFun() {}
private fun addedFun(): Int = 10
private val addedVal: String = "A"
private val changedVal: String = ""
private fun changedFun(arg: String) {}
@@ -0,0 +1,11 @@
package test
public fun unchangedFun() {}
private fun removedFun(): Int = 10
private val removedVal: String = "A"
private val changedVal: Int = 20
private fun changedFun(arg: Int) {}
@@ -0,0 +1,3 @@
changes in test/MainKt: MEMBERS
[addedFun, addedVal, changedFun, changedVal, removedFun, removedVal]
changes in test/TestPackage: NONE
@@ -0,0 +1,15 @@
package test
class ClassWithPrivateFunAdded {
private fun privateFun() {}
val s = "20"
}
class ClassWithPrivateFunRemoved {
public fun unchangedFun() {}
}
class ClassWithPrivateFunSignatureChanged {
private fun privateFun(arg: Int) {}
public fun unchangedFun() {}
}
@@ -0,0 +1,15 @@
package test
class ClassWithPrivateFunAdded {
val s = "20"
}
class ClassWithPrivateFunRemoved {
private fun privateFun() {}
public fun unchangedFun() {}
}
class ClassWithPrivateFunSignatureChanged {
private fun privateFun(arg: String) {}
public fun unchangedFun() {}
}
@@ -0,0 +1,3 @@
changes in test/ClassWithPrivateFunAdded: NONE
changes in test/ClassWithPrivateFunRemoved: NONE
changes in test/ClassWithPrivateFunSignatureChanged: NONE
@@ -0,0 +1,12 @@
package test
class ClassWithPrivatePrimaryConstructorAdded private constructor() {
private constructor(arg: Int) : this() {}
}
class ClassWithPrivatePrimaryConstructorRemoved {
private constructor(arg: Int) {}
}
class ClassWithPrivatePrimaryConstructorChanged private constructor(arg: String) {
}
@@ -0,0 +1,12 @@
package test
class ClassWithPrivatePrimaryConstructorAdded {
private constructor(arg: Int) {}
}
class ClassWithPrivatePrimaryConstructorRemoved private constructor() {
private constructor(arg: Int) : this() {}
}
class ClassWithPrivatePrimaryConstructorChanged private constructor() {
}
@@ -0,0 +1,3 @@
changes in test/ClassWithPrivatePrimaryConstructorAdded: NONE
changes in test/ClassWithPrivatePrimaryConstructorChanged: NONE
changes in test/ClassWithPrivatePrimaryConstructorRemoved: NONE
@@ -0,0 +1,15 @@
package test
class ClassWithPrivateSecondaryConstructorsAdded() {
private constructor(arg: Int) : this() {}
private constructor(arg: String) : this() {}
}
class ClassWithPrivateSecondaryConstructorsAdded2() {
private constructor(arg: Int) : this() {}
private constructor(arg: String) : this() {}
constructor(arg: Float) : this() {}
}
class ClassWithPrivateSecondaryConstructorsRemoved() {
}
@@ -0,0 +1,13 @@
package test
class ClassWithPrivateSecondaryConstructorsAdded {
}
class ClassWithPrivateSecondaryConstructorsAdded2() {
constructor(arg: Float) : this() {}
}
class ClassWithPrivateSecondaryConstructorsRemoved() {
private constructor(arg: Int): this() {}
private constructor(arg: String): this() {}
}
@@ -0,0 +1,3 @@
changes in test/ClassWithPrivateSecondaryConstructorsAdded: NONE
changes in test/ClassWithPrivateSecondaryConstructorsAdded2: NONE
changes in test/ClassWithPrivateSecondaryConstructorsRemoved: NONE
@@ -0,0 +1,21 @@
package test
class ClassWithPrivateValAdded {
private val x: Int = 100
public fun unchangedFun() {}
}
class ClassWithPrivateValRemoved {
public fun unchangedFun() {}
}
class ClassWithPrivateValSignatureChanged {
private val x: String = "X"
public fun unchangedFun() {}
}
class ClassWithGetterForPrivateValChanged {
private val x: Int
get() = 200
public fun unchangedFun() {}
}
@@ -0,0 +1,20 @@
package test
class ClassWithPrivateValAdded {
public fun unchangedFun() {}
}
class ClassWithPrivateValRemoved {
private val x: Int = 100
public fun unchangedFun() {}
}
class ClassWithPrivateValSignatureChanged {
private val x: Int = 100
public fun unchangedFun() {}
}
class ClassWithGetterForPrivateValChanged {
private val x: Int = 100
public fun unchangedFun() {}
}
@@ -0,0 +1,4 @@
changes in test/ClassWithGetterForPrivateValChanged: NONE
changes in test/ClassWithPrivateValAdded: NONE
changes in test/ClassWithPrivateValRemoved: NONE
changes in test/ClassWithPrivateValSignatureChanged: NONE
@@ -0,0 +1,22 @@
package test
class ClassWithPrivateVarAdded {
private var x: Int = 100
public fun unchangedFun() {}
}
class ClassWithPrivateVarRemoved {
public fun unchangedFun() {}
}
class ClassWithPrivateVarSignatureChanged {
private var x: String = "X"
public fun unchangedFun() {}
}
class ClassWithGetterAndSetterForPrivateVarChanged {
private var x: Int
get() = 200
set(value) {}
public fun unchangedFun() {}
}
@@ -0,0 +1,20 @@
package test
class ClassWithPrivateVarAdded {
public fun unchangedFun() {}
}
class ClassWithPrivateVarRemoved {
private var x: Int = 100
public fun unchangedFun() {}
}
class ClassWithPrivateVarSignatureChanged {
private var x: Int = 100
public fun unchangedFun() {}
}
class ClassWithGetterAndSetterForPrivateVarChanged {
private var x: Int = 100
public fun unchangedFun() {}
}
@@ -0,0 +1,4 @@
changes in test/ClassWithGetterAndSetterForPrivateVarChanged: NONE
changes in test/ClassWithPrivateVarAdded: NONE
changes in test/ClassWithPrivateVarRemoved: NONE
changes in test/ClassWithPrivateVarSignatureChanged: NONE
@@ -0,0 +1,6 @@
package test
import kotlin.annotation.*
open class ClassWithFlagsChanged {
}
@@ -0,0 +1,4 @@
package test
class ClassWithFlagsChanged {
}
@@ -0,0 +1 @@
changes in test/ClassWithFlagsChanged: CLASS_SIGNATURE
@@ -0,0 +1,3 @@
package test
public fun main() {}
@@ -0,0 +1,13 @@
package test
public class TestPackage {
public fun main() {}
}
public class MainKt {
companion object {
@JvmStatic
public fun main() {
}
}
}
@@ -0,0 +1,3 @@
REMOVED: class MainKt$Companion.class
changes in test/MainKt: CLASS_SIGNATURE
changes in test/TestPackage: CLASS_SIGNATURE
@@ -0,0 +1,6 @@
package test
import kotlin.annotation.*
class ClassWithTypeParameterListChanged<U> {
}
@@ -0,0 +1,4 @@
package test
class ClassWithTypeParameterListChanged<U, V> {
}
@@ -0,0 +1 @@
changes in test/ClassWithTypeParameterListChanged: CLASS_SIGNATURE
@@ -0,0 +1,5 @@
package test
import kotlin.annotation.*
annotation class ClassWithClassAnnotationListChanged
@@ -0,0 +1,4 @@
package test
@Deprecated("") class ClassWithClassAnnotationListChanged
@@ -0,0 +1 @@
changes in test/ClassWithClassAnnotationListChanged: CLASS_SIGNATURE
@@ -0,0 +1,4 @@
package test
class ClassWithSuperTypeListChanged : java.io.Serializable {
}
@@ -0,0 +1,6 @@
package test
class ClassWithSuperTypeListChanged {
}
@@ -0,0 +1 @@
changes in test/ClassWithSuperTypeListChanged: CLASS_SIGNATURE
@@ -0,0 +1,13 @@
package test
public class TestPackage {
public fun main() {}
}
public class MainKt {
companion object {
@JvmStatic
public fun main() {
}
}
}
@@ -0,0 +1,3 @@
package test
public fun main() {}
@@ -0,0 +1,3 @@
ADDED: class MainKt$Companion.class
changes in test/MainKt: CLASS_SIGNATURE
changes in test/TestPackage: CLASS_SIGNATURE
@@ -0,0 +1,40 @@
package test
class UnchangedClassWithFunOnly {
public fun unchangedPublicFun() {}
protected fun unchangedProtectedFun() {}
internal fun unchangedInternalFun() {}
private fun unchangedPrivateFun() {}
}
class UnchangedClassWithValOnly {
public val unchangedPublicVal = 10
protected val unchangedProtectedVal = 10
internal val unchangedInternalVal = 10
private val unchangedPrivateVal = 10
}
class UnchangedClassWithVarOnly {
public var unchangedPublicVar = 20
protected var unchangedProtectedVar = 20
internal var unchangedInternalVar = 20
private var unchangedPrivateVar = 20
}
class UnchangedClass {
public val unchangedPublicVal = 10
protected val unchangedProtectedVal = 10
internal val unchangedInternalVal = 10
private val unchangedPrivateVal = 10
public var unchangedPublicVar = 20
protected var unchangedProtectedVar = 20
internal var unchangedInternalVar = 20
private var unchangedPrivateVar = 20
public fun unchangedPublicFun() {}
protected fun unchangedProtectedFun() {}
internal fun unchangedInternalFun() {}
private fun unchangedPrivateFun() {}
}
@@ -0,0 +1,40 @@
package test
class UnchangedClassWithFunOnly {
public fun unchangedPublicFun() {}
protected fun unchangedProtectedFun() {}
internal fun unchangedInternalFun() {}
private fun unchangedPrivateFun() {}
}
class UnchangedClassWithValOnly {
public val unchangedPublicVal = 10
protected val unchangedProtectedVal = 10
internal val unchangedInternalVal = 10
private val unchangedPrivateVal = 10
}
class UnchangedClassWithVarOnly {
public var unchangedPublicVar = 20
protected var unchangedProtectedVar = 20
internal var unchangedInternalVar = 20
private var unchangedPrivateVar = 20
}
class UnchangedClass {
public val unchangedPublicVal = 10
protected val unchangedProtectedVal = 10
internal val unchangedInternalVal = 10
private val unchangedPrivateVal = 10
public var unchangedPublicVar = 20
protected var unchangedProtectedVar = 20
internal var unchangedInternalVar = 20
private var unchangedPrivateVar = 20
public fun unchangedPublicFun() {}
protected fun unchangedProtectedFun() {}
internal fun unchangedInternalFun() {}
private fun unchangedPrivateFun() {}
}
@@ -0,0 +1,4 @@
changes in test/UnchangedClass: NONE
changes in test/UnchangedClassWithFunOnly: NONE
changes in test/UnchangedClassWithValOnly: NONE
changes in test/UnchangedClassWithVarOnly: NONE
@@ -0,0 +1,13 @@
package test
public fun unchangedFun() {}
private fun unchangedPrivateFun(): Int = 10
public val unchangedVal: Int = 10
public var unchangedVar: Int = 20
private val unchangedPrivateVal: Int = 10
private var unchangedPrivateVar: Int = 20
@@ -0,0 +1,13 @@
package test
public fun unchangedFun() {}
private fun unchangedPrivateFun(): Int = 10
public val unchangedVal: Int = 10
public var unchangedVar: Int = 20
private val unchangedPrivateVal: Int = 10
private var unchangedPrivateVar: Int = 20
@@ -0,0 +1,2 @@
changes in test/MainKt: NONE
changes in test/TestPackage: NONE