Minor in JS backend: added test for the overriding in data class.
This commit is contained in:
@@ -43,6 +43,10 @@ public class DataClassTest extends SingleFileTranslationTest {
|
||||
checkFooBoxIsOk();
|
||||
}
|
||||
|
||||
public void testOverride() throws Exception {
|
||||
checkFooBoxIsOk();
|
||||
}
|
||||
|
||||
public void testKeyrole() throws Exception {
|
||||
checkFooBoxIsOk();
|
||||
}
|
||||
|
||||
@@ -0,0 +1,29 @@
|
||||
package foo
|
||||
|
||||
var t: Any? = null
|
||||
|
||||
data class Dat(val start: String, middle: String, val end: String) {
|
||||
override fun toString() = "another string"
|
||||
override fun hashCode() = 371
|
||||
override fun equals(other: Any?): Boolean {
|
||||
t = other
|
||||
return true
|
||||
}
|
||||
}
|
||||
|
||||
fun assertEquals<T>(expected: T, actual: T) {
|
||||
if (expected != actual) throw Exception("expected: $expected, actual, $actual")
|
||||
}
|
||||
|
||||
fun box(): String {
|
||||
val d = Dat("max", "-", "min")
|
||||
val other = Dat("other", "-", "instance")
|
||||
|
||||
assertEquals(371, d.hashCode())
|
||||
assertEquals(true, d == other)
|
||||
assertEquals(other, t)
|
||||
assertEquals("another string", d.toString())
|
||||
|
||||
return "OK"
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user