Update tests

This commit is contained in:
romanart
2018-10-12 15:43:41 +03:00
parent 6a66663739
commit 71f109387a
14 changed files with 67 additions and 8 deletions
@@ -1,4 +1,3 @@
// IGNORE_BACKEND: JS_IR
var res = ""
fun getM(): String {
@@ -1,4 +1,3 @@
// IGNORE_BACKEND: JS_IR
class CustomException : Throwable {
constructor(message: String?, cause: Throwable?) : super(message, cause)
@@ -1,4 +1,3 @@
// IGNORE_BACKEND: JS_IR
fun box(): String {
try {
throw Throwable("OK", null)
@@ -1,4 +1,3 @@
// IGNORE_BACKEND: JS_IR
fun box(): String {
var t = Throwable("O", Throwable("K"))
if (t.message != "O" || t.cause?.message != "K") return "fail1"
@@ -0,0 +1,42 @@
open class Base(message: String? = null, cause: Throwable? = null) : Throwable(message, cause)
open class Base2(message: String? = null, cause: Throwable? = null): Base(message, cause)
open class Override(message: String? = null, cause: Throwable? = null) : Base2(message, cause) {
var i = 0
override val message: String?
get() = "Override: " + super.message + "${i++}"
}
open class OverBase(message: String? = null, cause: Throwable? = null): Override(message, cause)
open class OverOverride(message: String? = null, cause: Throwable? = null) : OverBase(message, cause) {
override val message: String?
get() = "OverOver: " + super.message + "${i++}"
override val cause: Throwable?
get() = super.cause ?: this
}
fun box(): String {
check(Base("O", Base("K")), "OK")
check(Override("OK"), "Override: OK0")
check(OverOverride("OK"), "OverOver: Override: OK01OverOver: Override: OK23")
return "OK"
}
fun check(t: Throwable, msg: String) {
try {
throw t
} catch (e: Throwable) {
val c = t.cause
val m = if (c != null) t.message!! + c.message!! else t.message!!
if (m != msg) throw AssertionError(m)
}
}
@@ -1,4 +1,3 @@
// IGNORE_BACKEND: JS_IR
class MyThrowable(message: String? = null, cause: Throwable? = null) : Throwable(message, cause) {
override val message: String?
@@ -1,4 +1,3 @@
// IGNORE_BACKEND: JS_IR
class MyThrowable : Throwable {
val x: String