[JS FIR] Enable FIR JS stepping tests

^KT-64422 Fixed
This commit is contained in:
Alexander Korepanov
2023-12-19 16:15:00 +01:00
committed by Space Team
parent 36e8f9e3ac
commit 6556acabba
9 changed files with 800 additions and 16 deletions
@@ -298,10 +298,9 @@ fun main(args: Array<String>) {
model("codegen/boxWasmJsInterop")
}
// see todo on AbstractFirJsSteppingTest
// testClass<AbstractFirJsSteppingTest> {
// model("debug/stepping")
// }
testClass<AbstractFirJsSteppingTest> {
model("debug/stepping")
}
testClass<AbstractFirLoadK2CompiledJsKotlinTest> {
model("loadJava/compiledKotlin", extension = "kt")
@@ -1,9 +1,11 @@
package org.jetbrains.kotlin.js.test.fir
import org.jetbrains.kotlin.js.test.JsSteppingTestAdditionalSourceProvider
import org.jetbrains.kotlin.js.test.ir.AbstractJsBlackBoxCodegenTestBase
import org.jetbrains.kotlin.js.test.converters.FirJsKlibBackendFacade
import org.jetbrains.kotlin.js.test.converters.JsIrBackendFacade
import org.jetbrains.kotlin.js.test.converters.incremental.RecompileModuleJsIrBackendFacade
import org.jetbrains.kotlin.js.test.handlers.JsDebugRunner
import org.jetbrains.kotlin.js.test.handlers.JsIrRecompiledArtifactsIdentityHandler
import org.jetbrains.kotlin.parsing.parseBoolean
import org.jetbrains.kotlin.test.Constructor
@@ -23,6 +25,7 @@ import org.jetbrains.kotlin.test.frontend.fir.handlers.*
import org.jetbrains.kotlin.test.model.*
import org.jetbrains.kotlin.test.runners.codegen.commonFirHandlersForCodegenTest
import org.jetbrains.kotlin.test.services.configuration.JsEnvironmentConfigurator
import org.jetbrains.kotlin.utils.bind
import java.lang.Boolean.getBoolean
@@ -142,16 +145,23 @@ open class AbstractFirJsCodegenInlineTest : AbstractFirJsTest(
// }
//}
// TODO: implement separate expectations for FIR/JS to reuse testdata, disabled for now
//open class AbstractFirJsSteppingTest : AbstractFirJsTest(
// pathToTestDir = "compiler/testData/debug/stepping/",
// testGroupOutputDirPrefix = "debug/stepping/"
//) {
// override fun TestConfigurationBuilder.configuration() {
// commonConfigurationForJsBlackBoxCodegenTest()
// configurationForIrJsSteppingTest()
// }
//}
open class AbstractFirJsSteppingTest : AbstractFirJsTest(
pathToTestDir = "compiler/testData/debug/stepping/",
testGroupOutputDirPrefix = "debug/stepping/"
) {
override fun TestConfigurationBuilder.configuration() {
commonConfigurationForJsBlackBoxCodegenTest()
defaultDirectives {
+JsEnvironmentConfigurationDirectives.NO_COMMON_FILES
}
useAdditionalSourceProviders(::JsSteppingTestAdditionalSourceProvider)
jsArtifactsHandlersStep {
useHandlers(
::JsDebugRunner.bind(false)
)
}
}
}
open class AbstractFirJsCodegenWasmJsInteropTest : AbstractFirJsTest(
pathToTestDir = "compiler/testData/codegen/wasmJsInterop",