Files
kotlin-fork/js/js.translator/testData/expression/equals/cases/explicitEqualsMethod.kt
T
2014-03-11 20:04:00 +04:00

28 lines
530 B
Kotlin

package foo
class Foo(val name: String) {
override fun equals(other: Any?): Boolean {
if (other !is Foo) {
return false
}
return this.name == other.name
}
}
class Bar() {
}
fun box(): Boolean {
val a = Foo("abc")
val b = Foo("abc")
val c = Foo("def")
if (!(a equals b)) return false
if (a equals c) return false
if (Bar() equals Bar()) return false
val g = Bar()
if (!(g equals g)) return false
if (g equals Bar()) return false
return true
}