diff --git a/libraries/kotlin.test/wasm/src/main/kotlin/kotlin/test/JasmineLikeAdapter.kt b/libraries/kotlin.test/wasm/src/main/kotlin/kotlin/test/JasmineLikeAdapter.kt index 822dedc8115..2232433f828 100644 --- a/libraries/kotlin.test/wasm/src/main/kotlin/kotlin/test/JasmineLikeAdapter.kt +++ b/libraries/kotlin.test/wasm/src/main/kotlin/kotlin/test/JasmineLikeAdapter.kt @@ -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()) diff --git a/libraries/kotlin.test/wasm/src/main/kotlin/kotlin/test/TeamcityAdapter.kt b/libraries/kotlin.test/wasm/src/main/kotlin/kotlin/test/TeamcityAdapter.kt index 09ced3e36e5..3289b5777a6 100644 --- a/libraries/kotlin.test/wasm/src/main/kotlin/kotlin/test/TeamcityAdapter.kt +++ b/libraries/kotlin.test/wasm/src/main/kotlin/kotlin/test/TeamcityAdapter.kt @@ -17,7 +17,7 @@ private external fun nodeArguments(): String internal class TeamcityAdapter : FrameworkAdapter { - private var scheduleNextTaskAfter: Promise? = null + private var scheduleNextTaskAfter: Promise? = null private fun runOrScheduleNext(block: () -> Unit) { if (scheduleNextTaskAfter == null) { block() @@ -26,14 +26,14 @@ internal class TeamcityAdapter : FrameworkAdapter { } } - private fun runOrScheduleNextWithResult(block: () -> Promise?) { + private fun runOrScheduleNextWithResult(block: () -> Promise?) { if (scheduleNextTaskAfter == null) { val result = block() if (result != null) scheduleNextTaskAfter = result } else { scheduleNextTaskAfter = scheduleNextTaskAfter!!.then { - block() as Dynamic? + block() } } } diff --git a/libraries/stdlib/wasm/test/js/AsyncTest.kt b/libraries/stdlib/wasm/test/js/AsyncTest.kt index 2bc10248b9a..7e00fa7733b 100644 --- a/libraries/stdlib/wasm/test/js/AsyncTest.kt +++ b/libraries/stdlib/wasm/test/js/AsyncTest.kt @@ -3,19 +3,19 @@ package test.js import kotlin.js.* import kotlin.test.* -internal fun jsAsyncFoo(): Promise = +internal fun jsAsyncFoo(): Promise = js("(async () => 'foo')()") -internal fun jsFoo(): Dynamic = +internal fun jsFoo(): JsAny = js("'foo'") -var state: Dynamic? = null +var state: JsAny? = null class MyThrowable : Throwable() class AsyncTest { @Test - fun test1(): Promise { + fun test1(): Promise { var thenExecuted = false val p = jsAsyncFoo().then { value -> state = value @@ -27,7 +27,7 @@ class AsyncTest { } @Test - fun test2(): Promise { + fun test2(): Promise { assertEquals(state, jsFoo()) var thenExecuted = false val p = jsAsyncFoo().then { @@ -44,10 +44,9 @@ class AsyncTest { } @Test - fun testJsValueToThrowableOrNull1(): Promise { + fun testJsValueToThrowableOrNull1(): Promise { val p = jsAsyncFoo().then { throw MyThrowable() - null }.catch { e -> assert(e.toThrowableOrNull() is MyThrowable) null @@ -58,6 +57,6 @@ class AsyncTest { @Test fun testJsValueToThrowableOrNull2() { val e = MyThrowable() - assertEquals((e as Dynamic).toThrowableOrNull(), e) + assertEquals((e.toJsHandle()).toThrowableOrNull(), e) } } \ No newline at end of file