From 742c65a26b7bc7666cc95a5d4ab88385ab2e7700 Mon Sep 17 00:00:00 2001 From: Sergey Bogolepov Date: Fri, 1 Oct 2021 18:50:29 +0700 Subject: [PATCH] [K/N] Fix StubIr tests --- .../interop/gen/StubIrToMetadataTests.kt | 30 +++++++++++++++++-- 1 file changed, 27 insertions(+), 3 deletions(-) diff --git a/kotlin-native/Interop/StubGenerator/src/test/kotlin/org/jetbrains/kotlin/native/interop/gen/StubIrToMetadataTests.kt b/kotlin-native/Interop/StubGenerator/src/test/kotlin/org/jetbrains/kotlin/native/interop/gen/StubIrToMetadataTests.kt index 45119795017..0b88b267381 100644 --- a/kotlin-native/Interop/StubGenerator/src/test/kotlin/org/jetbrains/kotlin/native/interop/gen/StubIrToMetadataTests.kt +++ b/kotlin-native/Interop/StubGenerator/src/test/kotlin/org/jetbrains/kotlin/native/interop/gen/StubIrToMetadataTests.kt @@ -4,7 +4,6 @@ import kotlinx.metadata.KmAnnotationArgument import kotlinx.metadata.KmClassifier import kotlinx.metadata.KmModuleFragment import kotlinx.metadata.klib.compileTimeValue -import kotlinx.metadata.klib.uniqId import org.jetbrains.kotlin.native.interop.indexer.FunctionDecl import org.jetbrains.kotlin.native.interop.indexer.IntegerConstantDef import org.jetbrains.kotlin.native.interop.indexer.IntegerType @@ -45,12 +44,37 @@ class StubIrToMetadataTests { ) } + private fun createFakeBridgeBuilderResult( + fqName: String, + namesToBeDeclared: List + ): BridgeBuilderResult { + val nativeBridges = object : NativeBridges { + override fun isSupported(nativeBacked: NativeBacked): Boolean = true + override val kotlinLines: Sequence = emptySequence() + override val nativeLines: Sequence = emptySequence() + } + val kotlinFile = object : KotlinFile(fqName, namesToBeDeclared) { + override val mappingBridgeGenerator: MappingBridgeGenerator + get() = error("Not needed for tests.") + } + return BridgeBuilderResult( + kotlinFile = kotlinFile, + nativeBridges = nativeBridges, + propertyAccessorBridgeBodies = emptyMap(), + functionBridgeBodies = emptyMap(), + excludedStubs = emptySet() + ) + } + private fun createMetadata( fqName: String, functions: List = emptyList(), properties: List = emptyList() - ) = SimpleStubContainer(functions = functions, properties = properties) - .let { ModuleMetadataEmitter(fqName, it).emit() } + ): KmModuleFragment { + val stubContainer = SimpleStubContainer(functions = functions, properties = properties) + val bridgeBuilderResult = createFakeBridgeBuilderResult(fqName, stubContainer.computeNamesToBeDeclared(fqName)) + return ModuleMetadataEmitter(fqName, stubContainer, bridgeBuilderResult).emit() + } @Test fun `single simple function`() {