diff --git a/plugins/kotlinx-serialization/testData/boxWithoutRuntime/basic.kt b/plugins/kotlinx-serialization/testData/boxWithoutRuntime/basic.kt index acf1fcd40fe..9e52d44dff4 100644 --- a/plugins/kotlinx-serialization/testData/boxWithoutRuntime/basic.kt +++ b/plugins/kotlinx-serialization/testData/boxWithoutRuntime/basic.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND_K2: JVM_IR // TARGET_BACKEND: JVM_IR // WITH_STDLIB @@ -20,4 +19,4 @@ data class X(val i: Int) { fun box(): String { val i = X.x().i return if (i == 42) "OK" else i.toString() -} \ No newline at end of file +} diff --git a/plugins/kotlinx-serialization/tests-gen/org/jetbrains/kotlinx/serialization/runners/SerializationJdk11FirLightTreeBoxTestGenerated.java b/plugins/kotlinx-serialization/tests-gen/org/jetbrains/kotlinx/serialization/runners/SerializationJdk11FirLightTreeBoxTestGenerated.java new file mode 100644 index 00000000000..560743f85ab --- /dev/null +++ b/plugins/kotlinx-serialization/tests-gen/org/jetbrains/kotlinx/serialization/runners/SerializationJdk11FirLightTreeBoxTestGenerated.java @@ -0,0 +1,33 @@ +/* + * Copyright 2010-2023 JetBrains s.r.o. and Kotlin Programming Language contributors. + * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. + */ + +package org.jetbrains.kotlinx.serialization.runners; + +import com.intellij.testFramework.TestDataPath; +import org.jetbrains.kotlin.test.util.KtTestUtil; +import org.jetbrains.kotlin.test.TargetBackend; +import org.jetbrains.kotlin.test.TestMetadata; +import org.junit.jupiter.api.Nested; +import org.junit.jupiter.api.Test; + +import java.io.File; +import java.util.regex.Pattern; + +/** This class is generated by {@link org.jetbrains.kotlinx.serialization.TestGeneratorKt}. DO NOT MODIFY MANUALLY */ +@SuppressWarnings("all") +@TestMetadata("plugins/kotlinx-serialization/testData/jdk11BoxIr") +@TestDataPath("$PROJECT_ROOT") +public class SerializationJdk11FirLightTreeBoxTestGenerated extends AbstractSerializationJdk11FirLightTreeBoxTest { + @Test + public void testAllFilesPresentInJdk11BoxIr() throws Exception { + KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("plugins/kotlinx-serialization/testData/jdk11BoxIr"), Pattern.compile("^(.+)\\.kt$"), null, TargetBackend.JVM_IR, true); + } + + @Test + @TestMetadata("kt57647.kt") + public void testKt57647() throws Exception { + runTest("plugins/kotlinx-serialization/testData/jdk11BoxIr/kt57647.kt"); + } +} diff --git a/plugins/kotlinx-serialization/tests-gen/org/jetbrains/kotlinx/serialization/runners/SerializationWithoutRuntimeFirLightTreeBoxTestGenerated.java b/plugins/kotlinx-serialization/tests-gen/org/jetbrains/kotlinx/serialization/runners/SerializationWithoutRuntimeFirLightTreeBoxTestGenerated.java new file mode 100644 index 00000000000..75074df5daa --- /dev/null +++ b/plugins/kotlinx-serialization/tests-gen/org/jetbrains/kotlinx/serialization/runners/SerializationWithoutRuntimeFirLightTreeBoxTestGenerated.java @@ -0,0 +1,33 @@ +/* + * Copyright 2010-2023 JetBrains s.r.o. and Kotlin Programming Language contributors. + * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. + */ + +package org.jetbrains.kotlinx.serialization.runners; + +import com.intellij.testFramework.TestDataPath; +import org.jetbrains.kotlin.test.util.KtTestUtil; +import org.jetbrains.kotlin.test.TargetBackend; +import org.jetbrains.kotlin.test.TestMetadata; +import org.junit.jupiter.api.Nested; +import org.junit.jupiter.api.Test; + +import java.io.File; +import java.util.regex.Pattern; + +/** This class is generated by {@link org.jetbrains.kotlinx.serialization.TestGeneratorKt}. DO NOT MODIFY MANUALLY */ +@SuppressWarnings("all") +@TestMetadata("plugins/kotlinx-serialization/testData/boxWithoutRuntime") +@TestDataPath("$PROJECT_ROOT") +public class SerializationWithoutRuntimeFirLightTreeBoxTestGenerated extends AbstractSerializationWithoutRuntimeFirLightTreeBoxTest { + @Test + public void testAllFilesPresentInBoxWithoutRuntime() throws Exception { + KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("plugins/kotlinx-serialization/testData/boxWithoutRuntime"), Pattern.compile("^(.+)\\.kt$"), null, TargetBackend.JVM_IR, true); + } + + @Test + @TestMetadata("basic.kt") + public void testBasic() throws Exception { + runTest("plugins/kotlinx-serialization/testData/boxWithoutRuntime/basic.kt"); + } +} diff --git a/plugins/kotlinx-serialization/tests/org/jetbrains/kotlinx/serialization/TestGenerator.kt b/plugins/kotlinx-serialization/tests/org/jetbrains/kotlinx/serialization/TestGenerator.kt index 5e882166a04..85531edf45d 100644 --- a/plugins/kotlinx-serialization/tests/org/jetbrains/kotlinx/serialization/TestGenerator.kt +++ b/plugins/kotlinx-serialization/tests/org/jetbrains/kotlinx/serialization/TestGenerator.kt @@ -49,19 +49,27 @@ fun main(args: Array) { model("boxIr") } - testClass { - model("jdk11BoxIr") - } - testClass { model("boxIr") model("firMembers") } + testClass { + model("jdk11BoxIr") + } + + testClass { + model("jdk11BoxIr") + } + testClass { model("boxWithoutRuntime") } + testClass { + model("boxWithoutRuntime") + } + testClass { model("boxIr") } diff --git a/plugins/kotlinx-serialization/tests/org/jetbrains/kotlinx/serialization/runners/BoxTests.kt b/plugins/kotlinx-serialization/tests/org/jetbrains/kotlinx/serialization/runners/BoxTests.kt index 6c66f686ec1..65caa3b45a7 100644 --- a/plugins/kotlinx-serialization/tests/org/jetbrains/kotlinx/serialization/runners/BoxTests.kt +++ b/plugins/kotlinx-serialization/tests/org/jetbrains/kotlinx/serialization/runners/BoxTests.kt @@ -42,6 +42,20 @@ open class AbstractSerializationFirLightTreeBlackBoxTest : AbstractFirLightTreeB } } +open class AbstractSerializationJdk11FirLightTreeBoxTest : AbstractFirLightTreeBlackBoxCodegenTest() { + override fun configure(builder: TestConfigurationBuilder) { + super.configure(builder) + builder.configureForKotlinxSerialization(useJdk11 = true) + } +} + +open class AbstractSerializationWithoutRuntimeFirLightTreeBoxTest : AbstractFirLightTreeBlackBoxCodegenTest() { + override fun configure(builder: TestConfigurationBuilder) { + super.configure(builder) + builder.configureForKotlinxSerialization(noLibraries = true) + } +} + open class AbstractSerializationIrJsBoxTest : AbstractJsIrTest( pathToTestDir = "plugins/kotlinx-serialization/testData/boxIr/", testGroupOutputDirPrefix = "codegen/serializationBoxIr/"