diff --git a/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/runners/ir/AbstractFirJvmIrTextTest.kt b/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/runners/ir/AbstractFirJvmIrTextTest.kt new file mode 100644 index 00000000000..aa7aef3b668 --- /dev/null +++ b/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/runners/ir/AbstractFirJvmIrTextTest.kt @@ -0,0 +1,40 @@ +/* + * 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.kotlin.test.runners.ir + +import org.jetbrains.kotlin.test.Constructor +import org.jetbrains.kotlin.test.FirParser +import org.jetbrains.kotlin.test.backend.ir.IrBackendInput +import org.jetbrains.kotlin.test.builders.TestConfigurationBuilder +import org.jetbrains.kotlin.test.frontend.fir.Fir2IrResultsConverter +import org.jetbrains.kotlin.test.frontend.fir.FirFrontendFacade +import org.jetbrains.kotlin.test.frontend.fir.FirOutputArtifact +import org.jetbrains.kotlin.test.model.Frontend2BackendConverter +import org.jetbrains.kotlin.test.model.FrontendFacade +import org.jetbrains.kotlin.test.model.FrontendKind +import org.jetbrains.kotlin.test.model.FrontendKinds +import org.jetbrains.kotlin.test.runners.codegen.FirPsiCodegenTest + +abstract class AbstractFirJvmIrTextTest( + private val parser: FirParser, +) : AbstractJvmIrTextTest() { + override val frontend: FrontendKind<*> + get() = FrontendKinds.FIR + override val frontendFacade: Constructor> + get() = ::FirFrontendFacade + override val converter: Constructor> + get() = ::Fir2IrResultsConverter + + override fun configure(builder: TestConfigurationBuilder) { + super.configure(builder) + builder.commonConfigurationForK2(parser) + } +} + +open class AbstractFirLightTreeJvmIrTextTest : AbstractFirJvmIrTextTest(FirParser.LightTree) + +@FirPsiCodegenTest +open class AbstractFirPsiJvmIrTextTest : AbstractFirJvmIrTextTest(FirParser.Psi) diff --git a/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/runners/ir/AbstractIrTextTest.kt b/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/runners/ir/AbstractIrTextTest.kt index 3f0936b96f9..9b4760f2acc 100644 --- a/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/runners/ir/AbstractIrTextTest.kt +++ b/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/runners/ir/AbstractIrTextTest.kt @@ -6,7 +6,6 @@ package org.jetbrains.kotlin.test.runners.ir import org.jetbrains.kotlin.platform.TargetPlatform -import org.jetbrains.kotlin.platform.jvm.JvmPlatforms import org.jetbrains.kotlin.test.Constructor import org.jetbrains.kotlin.test.TargetBackend import org.jetbrains.kotlin.test.backend.BlackBoxCodegenSuppressor @@ -21,22 +20,13 @@ import org.jetbrains.kotlin.test.directives.CodegenTestDirectives.DUMP_KT_IR import org.jetbrains.kotlin.test.FirParser import org.jetbrains.kotlin.test.directives.LanguageSettingsDirectives import org.jetbrains.kotlin.test.directives.configureFirParser -import org.jetbrains.kotlin.test.frontend.classic.ClassicFrontend2IrConverter -import org.jetbrains.kotlin.test.frontend.classic.ClassicFrontendFacade -import org.jetbrains.kotlin.test.frontend.classic.ClassicFrontendOutputArtifact -import org.jetbrains.kotlin.test.frontend.fir.Fir2IrResultsConverter -import org.jetbrains.kotlin.test.frontend.fir.FirFrontendFacade -import org.jetbrains.kotlin.test.frontend.fir.FirOutputArtifact import org.jetbrains.kotlin.test.model.* import org.jetbrains.kotlin.test.runners.AbstractKotlinCompilerWithTargetBackendTest -import org.jetbrains.kotlin.test.runners.codegen.FirPsiCodegenTest -import org.jetbrains.kotlin.test.services.configuration.CommonEnvironmentConfigurator -import org.jetbrains.kotlin.test.services.configuration.JvmEnvironmentConfigurator import org.jetbrains.kotlin.test.services.sourceProviders.AdditionalDiagnosticsSourceFilesProvider import org.jetbrains.kotlin.test.services.sourceProviders.CodegenHelpersSourceFilesProvider import org.jetbrains.kotlin.test.services.sourceProviders.CoroutineHelpersSourceFilesProvider -abstract class AbstractIrTextTestBase>( +abstract class AbstractIrTextTest>( private val targetPlatform: TargetPlatform, targetBackend: TargetBackend ) : AbstractKotlinCompilerWithTargetBackendTest(targetBackend) { @@ -48,10 +38,10 @@ abstract class AbstractIrTextTestBase> : - AbstractIrTextTestBase(JvmPlatforms.defaultJvmPlatform, TargetBackend.JVM_IR) { - - final override fun TestConfigurationBuilder.applyConfigurators() { - useConfigurators( - ::CommonEnvironmentConfigurator, - ::JvmEnvironmentConfigurator - ) - } -} - -open class AbstractClassicJvmIrTextTest : AbstractJvmIrTextTestBase() { - - override val frontend: FrontendKind<*> - get() = FrontendKinds.ClassicFrontend - - override val frontendFacade: Constructor> - get() = ::ClassicFrontendFacade - - override val converter: Constructor> - get() = ::ClassicFrontend2IrConverter -} - -open class AbstractFirIrTextTestBase( - private val parser: FirParser, -) : AbstractJvmIrTextTestBase() { - override val frontend: FrontendKind<*> - get() = FrontendKinds.FIR - override val frontendFacade: Constructor> - get() = ::FirFrontendFacade - override val converter: Constructor> - get() = ::Fir2IrResultsConverter - - override fun configure(builder: TestConfigurationBuilder) { - super.configure(builder) - builder.commonConfigurationForK2(parser) - } -} - -open class AbstractFirLightTreeJvmIrTextTest : AbstractFirIrTextTestBase(FirParser.LightTree) - -@FirPsiCodegenTest -open class AbstractFirPsiJvmIrTextTest : AbstractFirIrTextTestBase(FirParser.Psi) diff --git a/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/runners/ir/AbstractJvmIrTextTest.kt b/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/runners/ir/AbstractJvmIrTextTest.kt new file mode 100644 index 00000000000..e00c78ebf59 --- /dev/null +++ b/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/runners/ir/AbstractJvmIrTextTest.kt @@ -0,0 +1,41 @@ +/* + * 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.kotlin.test.runners.ir + +import org.jetbrains.kotlin.platform.jvm.JvmPlatforms +import org.jetbrains.kotlin.test.Constructor +import org.jetbrains.kotlin.test.TargetBackend +import org.jetbrains.kotlin.test.backend.ir.IrBackendInput +import org.jetbrains.kotlin.test.builders.TestConfigurationBuilder +import org.jetbrains.kotlin.test.frontend.classic.ClassicFrontend2IrConverter +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.services.configuration.CommonEnvironmentConfigurator +import org.jetbrains.kotlin.test.services.configuration.JvmEnvironmentConfigurator + +abstract class AbstractJvmIrTextTest> : + AbstractIrTextTest(JvmPlatforms.defaultJvmPlatform, TargetBackend.JVM_IR) { + + final override fun TestConfigurationBuilder.applyConfigurators() { + useConfigurators( + ::CommonEnvironmentConfigurator, + ::JvmEnvironmentConfigurator + ) + } +} + +open class AbstractClassicJvmIrTextTest : AbstractJvmIrTextTest() { + + override val frontend: FrontendKind<*> + get() = FrontendKinds.ClassicFrontend + + override val frontendFacade: Constructor> + get() = ::ClassicFrontendFacade + + override val converter: Constructor> + get() = ::ClassicFrontend2IrConverter +} diff --git a/js/js.tests/test/org/jetbrains/kotlin/js/test/ir/AbstractJsIrTextTestBase.kt b/js/js.tests/test/org/jetbrains/kotlin/js/test/ir/AbstractJsIrTextTestBase.kt index c7a2fa0f545..ac73f41f582 100644 --- a/js/js.tests/test/org/jetbrains/kotlin/js/test/ir/AbstractJsIrTextTestBase.kt +++ b/js/js.tests/test/org/jetbrains/kotlin/js/test/ir/AbstractJsIrTextTestBase.kt @@ -14,13 +14,13 @@ import org.jetbrains.kotlin.test.frontend.classic.ClassicFrontend2IrConverter 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.ir.AbstractIrTextTestBase +import org.jetbrains.kotlin.test.runners.ir.AbstractIrTextTest import org.jetbrains.kotlin.test.services.JsLibraryProvider import org.jetbrains.kotlin.test.services.configuration.CommonEnvironmentConfigurator import org.jetbrains.kotlin.test.services.configuration.JsEnvironmentConfigurator abstract class AbstractJsIrTextTestBase> : - AbstractIrTextTestBase(JsPlatforms.defaultJsPlatform, TargetBackend.JS_IR) { + AbstractIrTextTest(JsPlatforms.defaultJsPlatform, TargetBackend.JS_IR) { final override fun TestConfigurationBuilder.applyConfigurators() { useConfigurators(