[Test] Require specifying parser for FIR test. Unify names for FIR tests

Now all tests with `Fir` in name are named accordingly to parser which
  is used in them -- `FirPsi` or `FirLightTree`. This is needed to keep
  consistency between different types of tests, because there is no
  single default in parser mode between different scenarios of using FIR
This commit is contained in:
Dmitriy Novozhilov
2023-02-20 12:14:46 +02:00
committed by Space Team
parent 7e36a88b82
commit da581f38e1
95 changed files with 361 additions and 306 deletions
@@ -15,7 +15,7 @@ import org.jetbrains.kotlin.js.test.ir.*
import org.jetbrains.kotlin.js.testOld.AbstractDceTest
import org.jetbrains.kotlin.js.testOld.compatibility.binary.AbstractJsKlibBinaryCompatibilityTest
import org.jetbrains.kotlin.test.TargetBackend
import org.jetbrains.kotlin.test.runners.ir.AbstractFir2IrJsTextTest
import org.jetbrains.kotlin.test.runners.ir.AbstractFirLightTreeIrJsTextTest
fun main(args: Array<String>) {
System.setProperty("java.awt.headless", "true")
@@ -170,12 +170,12 @@ fun main(args: Array<String>) {
model("debug/localVariables")
}
testClass<AbstractFirJsDiagnosticTest>(suiteTestClassName = "FirJsOldFrontendDiagnosticsTestGenerated") {
testClass<AbstractFirPsiJsDiagnosticTest>(suiteTestClassName = "FirPsiJsOldFrontendDiagnosticsTestGenerated") {
model("diagnostics/testsWithJsStdLib", pattern = "^([^_](.+))\\.kt$", excludedPattern = excludedFirTestdataPattern)
}
testClass<AbstractFir2IrJsTextTest>(
suiteTestClassName = "Fir2IrJsTextTestGenerated"
testClass<AbstractFirLightTreeIrJsTextTest>(
suiteTestClassName = "FirLightTreeJsIrTextTestGenerated"
) {
model("ir/irJsText")
}
@@ -7,10 +7,12 @@ package org.jetbrains.kotlin.js.test.fir
import org.jetbrains.kotlin.js.test.JsAdditionalSourceProvider
import org.jetbrains.kotlin.platform.js.JsPlatforms
import org.jetbrains.kotlin.test.FirParser
import org.jetbrains.kotlin.test.builders.TestConfigurationBuilder
import org.jetbrains.kotlin.test.builders.firHandlersStep
import org.jetbrains.kotlin.test.directives.ConfigurationDirectives
import org.jetbrains.kotlin.test.directives.DiagnosticsDirectives
import org.jetbrains.kotlin.test.directives.configureFirParser
import org.jetbrains.kotlin.test.frontend.fir.FirFrontendFacade
import org.jetbrains.kotlin.test.frontend.fir.handlers.*
import org.jetbrains.kotlin.test.model.DependencyKind
@@ -22,7 +24,7 @@ import org.jetbrains.kotlin.test.services.configuration.CommonEnvironmentConfigu
import org.jetbrains.kotlin.test.services.configuration.JsEnvironmentConfigurator
import org.jetbrains.kotlin.test.services.sourceProviders.CoroutineHelpersSourceFilesProvider
abstract class AbstractFirJsDiagnosticTest : AbstractKotlinCompilerTest() {
abstract class AbstractFirJsDiagnosticTestBase(val parser: FirParser) : AbstractKotlinCompilerTest() {
override fun TestConfigurationBuilder.configuration() {
globalDefaults {
frontend = FrontendKinds.FIR
@@ -35,6 +37,8 @@ abstract class AbstractFirJsDiagnosticTest : AbstractKotlinCompilerTest() {
DiagnosticsDirectives.DIAGNOSTICS with listOf("-warnings", "-infos")
}
configureFirParser(parser)
enableMetaInfoHandler()
configurationForClassicAndFirTestsAlongside()
@@ -64,3 +68,5 @@ abstract class AbstractFirJsDiagnosticTest : AbstractKotlinCompilerTest() {
}
}
}
abstract class AbstractFirPsiJsDiagnosticTest : AbstractFirJsDiagnosticTestBase(FirParser.Psi)
@@ -7,10 +7,12 @@ import org.jetbrains.kotlin.js.test.converters.incremental.RecompileModuleJsIrBa
import org.jetbrains.kotlin.js.test.handlers.JsIrRecompiledArtifactsIdentityHandler
import org.jetbrains.kotlin.parsing.parseBoolean
import org.jetbrains.kotlin.test.Constructor
import org.jetbrains.kotlin.test.FirParser
import org.jetbrains.kotlin.test.TargetBackend
import org.jetbrains.kotlin.test.backend.ir.IrBackendInput
import org.jetbrains.kotlin.test.builders.*
import org.jetbrains.kotlin.test.directives.DiagnosticsDirectives
import org.jetbrains.kotlin.test.directives.FirDiagnosticsDirectives
import org.jetbrains.kotlin.test.directives.JsEnvironmentConfigurationDirectives
import org.jetbrains.kotlin.test.directives.LanguageSettingsDirectives
import org.jetbrains.kotlin.test.frontend.fir.Fir2IrJsResultsConverter
@@ -59,6 +61,7 @@ open class AbstractFirJsTest(
+LanguageSettingsDirectives.ALLOW_KOTLIN_PACKAGE
-JsEnvironmentConfigurationDirectives.GENERATE_NODE_JS_RUNNER
DiagnosticsDirectives.DIAGNOSTICS with listOf("-infos")
FirDiagnosticsDirectives.FIR_PARSER with FirParser.Psi
}
firHandlersStep {