blob: e0ef2fb8128299c3f1cb84c7336f20b9c25898a5 [file]
fun expectThrowableMessage(block: () -> Unit): String {
val msg = try {
block()
"no failure"
} catch (e: Throwable) {
e.message ?: "no message"
}
return "---${msg}---\n"
}
fun runAll(vararg tests: Pair<String, () -> Unit>): String {
return tests.joinToString("") { (name, func) ->
val msg = expectThrowableMessage { func() }
"${name}: $msg"
}
}
fun withThrowableMessage(block: () -> String): String {
val msg = try {
block()
} catch (e: Throwable) {
e.message ?: "no message"
}
return "---\n${msg}---\n"
}
fun runAllOutput(vararg tests: Pair<String, () -> String>): String {
return tests.joinToString("") { (name, func) ->
val msg = withThrowableMessage { func() }
"${name}: $msg"
}
}