Minor in JS backend: added test for the overriding in data class.

This commit is contained in:
Zalim Bashorov
2014-05-06 14:39:26 +04:00
parent ab81d2e261
commit d02e4bd1ec
2 changed files with 33 additions and 0 deletions
@@ -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"
}