[FIR JS] Add a Fir2IrJsText runner
This commit is contained in:
+35
-5
@@ -5,6 +5,7 @@
|
||||
|
||||
package org.jetbrains.kotlin.test.runners.ir
|
||||
|
||||
import org.jetbrains.kotlin.platform.js.JsPlatforms
|
||||
import org.jetbrains.kotlin.platform.jvm.JvmPlatforms
|
||||
import org.jetbrains.kotlin.test.Constructor
|
||||
import org.jetbrains.kotlin.test.TargetBackend
|
||||
@@ -27,7 +28,9 @@ 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.services.JsLibraryProvider
|
||||
import org.jetbrains.kotlin.test.services.configuration.CommonEnvironmentConfigurator
|
||||
import org.jetbrains.kotlin.test.services.configuration.JsEnvironmentConfigurator
|
||||
import org.jetbrains.kotlin.test.services.configuration.JvmEnvironmentConfigurator
|
||||
import org.jetbrains.kotlin.test.services.sourceProviders.AdditionalDiagnosticsSourceFilesProvider
|
||||
import org.jetbrains.kotlin.test.services.sourceProviders.CodegenHelpersSourceFilesProvider
|
||||
@@ -40,6 +43,13 @@ abstract class AbstractIrTextTestBase<R : ResultingArtifact.FrontendOutput<R>> :
|
||||
abstract val frontendFacade: Constructor<FrontendFacade<R>>
|
||||
abstract val converter: Constructor<Frontend2BackendConverter<R, IrBackendInput>>
|
||||
|
||||
open fun TestConfigurationBuilder.applyConfigurators() {
|
||||
useConfigurators(
|
||||
::CommonEnvironmentConfigurator,
|
||||
::JvmEnvironmentConfigurator
|
||||
)
|
||||
}
|
||||
|
||||
override fun TestConfigurationBuilder.configuration() {
|
||||
globalDefaults {
|
||||
frontend = this@AbstractIrTextTestBase.frontend
|
||||
@@ -54,10 +64,7 @@ abstract class AbstractIrTextTestBase<R : ResultingArtifact.FrontendOutput<R>> :
|
||||
+DUMP_KT_IR
|
||||
}
|
||||
|
||||
useConfigurators(
|
||||
::CommonEnvironmentConfigurator,
|
||||
::JvmEnvironmentConfigurator
|
||||
)
|
||||
applyConfigurators()
|
||||
|
||||
useAdditionalSourceProviders(
|
||||
::AdditionalDiagnosticsSourceFilesProvider,
|
||||
@@ -133,4 +140,27 @@ open class AbstractLightTreeFir2IrTextTest : AbstractFir2IrTextTest() {
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
open class AbstractFir2IrJsTextTest : AbstractFir2IrTextTest() {
|
||||
override fun TestConfigurationBuilder.applyConfigurators() {
|
||||
useConfigurators(
|
||||
::CommonEnvironmentConfigurator,
|
||||
::JsEnvironmentConfigurator,
|
||||
)
|
||||
|
||||
useAdditionalService(::JsLibraryProvider)
|
||||
}
|
||||
|
||||
override fun configure(builder: TestConfigurationBuilder) {
|
||||
super.configure(builder)
|
||||
with(builder) {
|
||||
globalDefaults {
|
||||
targetPlatform = JsPlatforms.defaultJsPlatform
|
||||
artifactKind = BinaryKind.NoArtifact
|
||||
targetBackend = TargetBackend.JS_IR
|
||||
dependencyKind = DependencyKind.Source
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -17,6 +17,7 @@ import org.jetbrains.kotlin.js.testOld.wasm.semantics.AbstractIrCodegenBoxWasmTe
|
||||
import org.jetbrains.kotlin.js.testOld.wasm.semantics.AbstractIrCodegenWasmJsInteropWasmTest
|
||||
import org.jetbrains.kotlin.js.testOld.wasm.semantics.AbstractJsTranslatorWasmTest
|
||||
import org.jetbrains.kotlin.test.TargetBackend
|
||||
import org.jetbrains.kotlin.test.runners.ir.AbstractFir2IrJsTextTest
|
||||
|
||||
fun main(args: Array<String>) {
|
||||
System.setProperty("java.awt.headless", "true")
|
||||
@@ -147,6 +148,12 @@ fun main(args: Array<String>) {
|
||||
testClass<AbstractIrCodegenWasmJsInteropJsTest> {
|
||||
model("codegen/boxWasmJsInterop")
|
||||
}
|
||||
|
||||
testClass<AbstractFir2IrJsTextTest>(
|
||||
suiteTestClassName = "Fir2IrJsTextTestGenerated"
|
||||
) {
|
||||
model("ir/irJsText")
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user