[WasmJs] Fix kotlin.test AfterTest for test with Promise return type
Fix #KT-61888
This commit is contained in:
committed by
Space Team
parent
78b666bb40
commit
b6ef1e08e1
@@ -22,6 +22,7 @@ import org.jetbrains.kotlin.ir.builders.declarations.buildFun
|
||||
import org.jetbrains.kotlin.ir.declarations.*
|
||||
import org.jetbrains.kotlin.ir.declarations.impl.IrExternalPackageFragmentImpl
|
||||
import org.jetbrains.kotlin.ir.declarations.impl.IrFileImpl
|
||||
import org.jetbrains.kotlin.ir.symbols.IrClassSymbol
|
||||
import org.jetbrains.kotlin.ir.symbols.IrSimpleFunctionSymbol
|
||||
import org.jetbrains.kotlin.ir.symbols.impl.DescriptorlessExternalPackageFragmentSymbol
|
||||
import org.jetbrains.kotlin.ir.types.IrTypeSystemContext
|
||||
@@ -73,6 +74,9 @@ class WasmBackendContext(
|
||||
override val coroutineSymbols =
|
||||
JsCommonCoroutineSymbols(symbolTable, module,this)
|
||||
|
||||
override val jsPromiseSymbol: IrClassSymbol?
|
||||
get() = if (isWasmJsTarget) wasmSymbols.jsRelatedSymbols.jsPromise else null
|
||||
|
||||
val innerClassesSupport = JsInnerClassesSupport(mapping, irFactory)
|
||||
|
||||
override val internalPackageFqn = FqName("kotlin.wasm")
|
||||
|
||||
@@ -385,6 +385,8 @@ class WasmSymbols(
|
||||
|
||||
val externRefIsNull = getInternalFunction("wasm_externref_is_null")
|
||||
|
||||
val jsPromise = getIrClass(FqName("kotlin.js.Promise"))
|
||||
|
||||
internal val throwAsJsException: IrSimpleFunctionSymbol =
|
||||
getInternalFunction("throwAsJsException")
|
||||
}
|
||||
|
||||
+6
-6
@@ -7,17 +7,17 @@ package org.jetbrains.kotlin.backend.wasm.lower
|
||||
|
||||
import org.jetbrains.kotlin.backend.common.lower.createIrBuilder
|
||||
import org.jetbrains.kotlin.backend.wasm.WasmBackendContext
|
||||
import org.jetbrains.kotlin.ir.backend.js.lower.TestGenerator
|
||||
import org.jetbrains.kotlin.ir.builders.irCall
|
||||
import org.jetbrains.kotlin.ir.backend.js.lower.generateJsTests
|
||||
import org.jetbrains.kotlin.ir.declarations.IrModuleFragment
|
||||
import org.jetbrains.kotlin.ir.expressions.IrBlockBody
|
||||
|
||||
fun generateWasmTests(context: WasmBackendContext, moduleFragment: IrModuleFragment) {
|
||||
val generator = TestGenerator(context, true)
|
||||
|
||||
moduleFragment.files.toList().forEach {
|
||||
generator.lower(it)
|
||||
}
|
||||
generateJsTests(
|
||||
context = context,
|
||||
moduleFragment = moduleFragment,
|
||||
groupByPackage = true
|
||||
)
|
||||
|
||||
if (context.testEntryPoints.isEmpty())
|
||||
return
|
||||
|
||||
Reference in New Issue
Block a user