JVM_IR: run Kotlin against Kotlin tests with serialization
This commit is contained in:
committed by
TeamCityServer
parent
ab3d6490ed
commit
97d3eda23c
@@ -15,6 +15,7 @@ enum class TargetBackend(
|
||||
JVM_IR(true, JVM),
|
||||
JVM_MULTI_MODULE_IR_AGAINST_OLD(true, JVM_IR),
|
||||
JVM_MULTI_MODULE_OLD_AGAINST_IR(false, JVM),
|
||||
JVM_IR_SERIALIZE(true, JVM_IR),
|
||||
JS(false),
|
||||
JS_IR(true, JS),
|
||||
JS_IR_ES6(true, JS_IR),
|
||||
|
||||
+5371
File diff suppressed because it is too large
Load Diff
+21
-1
@@ -5,6 +5,8 @@
|
||||
|
||||
package org.jetbrains.kotlin.test.runners.codegen
|
||||
|
||||
import org.jetbrains.kotlin.config.CompilerConfiguration
|
||||
import org.jetbrains.kotlin.config.JVMConfigurationKeys
|
||||
import org.jetbrains.kotlin.test.Constructor
|
||||
import org.jetbrains.kotlin.test.TargetBackend
|
||||
import org.jetbrains.kotlin.test.TestInfrastructureInternals
|
||||
@@ -22,7 +24,9 @@ import org.jetbrains.kotlin.test.frontend.classic.ClassicFrontendFacade
|
||||
import org.jetbrains.kotlin.test.frontend.classic.ClassicFrontendOutputArtifact
|
||||
import org.jetbrains.kotlin.test.model.*
|
||||
import org.jetbrains.kotlin.test.runners.AbstractKotlinCompilerWithTargetBackendTest
|
||||
import org.jetbrains.kotlin.test.services.EnvironmentConfigurator
|
||||
import org.jetbrains.kotlin.test.services.ModuleTransformerForTwoFilesBoxTests
|
||||
import org.jetbrains.kotlin.test.services.TestServices
|
||||
|
||||
|
||||
@OptIn(TestInfrastructureInternals::class)
|
||||
@@ -32,7 +36,9 @@ abstract class AbstractCompileKotlinAgainstInlineKotlinTestBase<I : ResultingArt
|
||||
abstract val frontendToBackendConverter: Constructor<Frontend2BackendConverter<ClassicFrontendOutputArtifact, I>>
|
||||
abstract val backendFacade: Constructor<BackendFacade<I, BinaryArtifacts.Jvm>>
|
||||
|
||||
override fun TestConfigurationBuilder.configuration() {
|
||||
override fun TestConfigurationBuilder.configuration() = configurationImpl()
|
||||
|
||||
protected fun TestConfigurationBuilder.configurationImpl() {
|
||||
commonConfigurationForCodegenTest(
|
||||
FrontendKinds.ClassicFrontend,
|
||||
::ClassicFrontendFacade,
|
||||
@@ -65,3 +71,17 @@ open class AbstractIrCompileKotlinAgainstInlineKotlinTest :
|
||||
override val backendFacade: Constructor<BackendFacade<IrBackendInput, BinaryArtifacts.Jvm>>
|
||||
get() = ::JvmIrBackendFacade
|
||||
}
|
||||
|
||||
open class AbstractIrSerializeCompileKotlinAgainstInlineKotlinTest : AbstractIrCompileKotlinAgainstInlineKotlinTest() {
|
||||
override fun TestConfigurationBuilder.configuration() {
|
||||
// call super
|
||||
configurationImpl()
|
||||
useConfigurators(::SerializeSetter)
|
||||
}
|
||||
|
||||
private class SerializeSetter(testServices: TestServices) : EnvironmentConfigurator(testServices) {
|
||||
override fun configureCompilerConfiguration(configuration: CompilerConfiguration, module: TestModule) {
|
||||
configuration.put(JVMConfigurationKeys.SERIALIZE_IR, true)
|
||||
}
|
||||
}
|
||||
}
|
||||
+4
@@ -110,6 +110,10 @@ fun generateJUnit5CompilerTests(args: Array<String>) {
|
||||
model("codegen/boxInline")
|
||||
}
|
||||
|
||||
testClass<AbstractIrSerializeCompileKotlinAgainstInlineKotlinTest> {
|
||||
model("codegen/boxInline")
|
||||
}
|
||||
|
||||
testClass<AbstractJvmIrAgainstOldBoxInlineTest> {
|
||||
model("codegen/boxInline")
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user