[K/N] Fix K2 ObjC interop: Fields are not supported for Companion of subclass of ObjC type

^KT-63048
This commit is contained in:
Vladimir Sukharev
2023-11-03 20:07:17 +01:00
committed by Space Team
parent 3ea4a6a937
commit 4d4ad6c0d8
6 changed files with 34 additions and 6 deletions
@@ -13,7 +13,6 @@ import org.jetbrains.kotlin.konan.test.blackbox.support.TestCompilerArgs
import org.jetbrains.kotlin.konan.test.blackbox.support.TestKind
import org.jetbrains.kotlin.konan.test.blackbox.support.compilation.TestCompilationResult.Companion.assertSuccess
import org.jetbrains.kotlin.konan.test.blackbox.support.group.FirPipeline
import org.jetbrains.kotlin.konan.test.blackbox.support.runner.TestExecutable
import org.jetbrains.kotlin.konan.test.blackbox.support.settings.PipelineType
import org.jetbrains.kotlin.test.TestMetadata
import org.junit.jupiter.api.Tag
@@ -26,9 +25,12 @@ abstract class BaseCInteropCheckersTest : AbstractNativeSimpleTest() {
@Test
@TestMetadata(TEST_DATA_DIR)
fun testBuilding() {
val defFile = File(TEST_DATA_DIR, DEF_FILE)
muteCInteropTestIfNecessary(defFile, targets.testTarget)
val library = cinteropToLibrary(
targets = targets,
defFile = File(TEST_DATA_DIR, DEF_FILE),
defFile = defFile,
outputDir = buildDir,
freeCompilerArgs = TestCompilerArgs.EMPTY
).assertSuccess().resultingArtifact
@@ -42,7 +44,6 @@ abstract class BaseCInteropCheckersTest : AbstractNativeSimpleTest() {
val compilationResult = compileToExecutable(testCase, library.asLibraryDependency()).assertSuccess()
}
companion object {
const val TEST_DATA_DIR = "native/native.tests/testData/CInterop/KT-63048"
const val DEF_FILE = "library.def"
@@ -54,4 +55,4 @@ class CInteropCheckersTest : BaseCInteropCheckersTest()
@FirPipeline
@Tag("frontend-fir")
class FirCInteropCheckersTest : BaseCInteropCheckersTest()
class FirCInteropCheckersTest : BaseCInteropCheckersTest()