Files
kotlin-fork/backend.native/tests/external/codegen/blackbox/controlStructures/tryCatchInExpressions/expectException.kt
T
Ilya Matveev 1b553ebfaf backend/tests: Add blackbox tests from Kotlin JVM
Added tests from testData/codegen/box directory. There are blackbox tests
in other directories and they are to be added.
2017-01-20 14:04:04 +03:00

35 lines
590 B
Kotlin

public inline fun fails(block: () -> Unit): Throwable? {
var thrown: Throwable? = null
try {
block()
} catch (e: Throwable) {
thrown = e
}
if (thrown == null)
throw Exception("Expected an exception to be thrown")
return thrown
}
public inline fun throwIt(msg: String) {
throw Exception(msg)
}
fun box(): String {
fails {
throwIt("oops!")
}
var x = 0
try {
fails {
x = 1
}
}
catch (e: Exception) {
x = 2
}
if (x != 2) return "Failed: x==$x"
return "OK"
}