[Wasm] Stop using Dynamic in kotlin-test

This commit is contained in:
Svyatoslav Kuzmich
2023-03-20 16:37:27 +01:00
committed by Space Team
parent 1071669a92
commit 635671d623
3 changed files with 14 additions and 15 deletions
@@ -21,15 +21,15 @@ private fun it(name: String, fn: () -> JsAny?): Unit =
private fun xit(name: String, fn: () -> JsAny?): Unit =
js("xit(name, fn)")
private fun jsThrow(jsException: Dynamic) {
private fun jsThrow(jsException: JsAny) {
js("throw e")
}
private fun throwableToJsError(message: String, stack: String): Dynamic {
private fun throwableToJsError(message: String, stack: String): JsAny {
js("var e = new Error(); e.message = message; e.stack = stack; return e;")
}
private fun Throwable.toJsError(): Dynamic =
private fun Throwable.toJsError(): JsAny =
throwableToJsError(message ?: "", stackTraceToString())
/**
@@ -52,7 +52,7 @@ internal class JasmineLikeAdapter : FrameworkAdapter {
.toThrowableOrNull()
?.let { it.toJsError() }
?: exception
Promise.reject(jsException) as Dynamic
Promise.reject(jsException)
}
} catch (exception: Throwable) {
jsThrow(exception.toJsError())
@@ -17,7 +17,7 @@ private external fun nodeArguments(): String
internal class TeamcityAdapter : FrameworkAdapter {
private var scheduleNextTaskAfter: Promise<Dynamic?>? = null
private var scheduleNextTaskAfter: Promise<JsAny?>? = null
private fun runOrScheduleNext(block: () -> Unit) {
if (scheduleNextTaskAfter == null) {
block()
@@ -26,14 +26,14 @@ internal class TeamcityAdapter : FrameworkAdapter {
}
}
private fun runOrScheduleNextWithResult(block: () -> Promise<Dynamic?>?) {
private fun runOrScheduleNextWithResult(block: () -> Promise<JsAny?>?) {
if (scheduleNextTaskAfter == null) {
val result = block()
if (result != null)
scheduleNextTaskAfter = result
} else {
scheduleNextTaskAfter = scheduleNextTaskAfter!!.then {
block() as Dynamic?
block()
}
}
}