[Tests] Detect frontend type within FirIrDumpIdenticalChecker
^KT-64256 Fixed
This commit is contained in:
committed by
Space Team
parent
82c5b745e2
commit
50f1ea79c5
+4
@@ -11,7 +11,9 @@ import org.jetbrains.kotlin.test.directives.FirDiagnosticsDirectives
|
||||
import org.jetbrains.kotlin.test.directives.FirDiagnosticsDirectives.FIR_IDENTICAL
|
||||
import org.jetbrains.kotlin.test.directives.model.DirectivesContainer
|
||||
import org.jetbrains.kotlin.test.model.AfterAnalysisChecker
|
||||
import org.jetbrains.kotlin.test.model.FrontendKinds
|
||||
import org.jetbrains.kotlin.test.services.TestServices
|
||||
import org.jetbrains.kotlin.test.services.defaultsProvider
|
||||
import org.jetbrains.kotlin.test.services.moduleStructure
|
||||
import org.jetbrains.kotlin.test.utils.FirIdenticalCheckerHelper
|
||||
import org.jetbrains.kotlin.test.utils.withExtension
|
||||
@@ -44,6 +46,8 @@ class FirIrDumpIdenticalChecker(testServices: TestServices) : AfterAnalysisCheck
|
||||
override fun check(failedAssertions: List<WrappedException>) {
|
||||
if (failedAssertions.isNotEmpty()) return
|
||||
val testDataFile = testServices.moduleStructure.originalTestDataFiles.first()
|
||||
if (testServices.defaultsProvider.defaultFrontend != FrontendKinds.FIR)
|
||||
return
|
||||
if (DUMP_IR !in testServices.moduleStructure.allDirectives)
|
||||
return
|
||||
if (FIR_IDENTICAL in testServices.moduleStructure.allDirectives) {
|
||||
|
||||
+1
-1
@@ -71,7 +71,7 @@ abstract class AbstractFirBlackBoxCodegenTestBase(
|
||||
::FirMetaInfoDiffSuppressor
|
||||
)
|
||||
|
||||
configureDumpHandlersForCodegenTest(isFir = true)
|
||||
configureDumpHandlersForCodegenTest()
|
||||
|
||||
baseFirBlackBoxCodegenTestDirectivesConfiguration()
|
||||
}
|
||||
|
||||
+1
-1
@@ -85,7 +85,7 @@ open class AbstractFirLocalVariableTestBase(val parser: FirParser) : AbstractLoc
|
||||
|
||||
override fun configure(builder: TestConfigurationBuilder) {
|
||||
super.configure(builder)
|
||||
builder.configureDumpHandlersForCodegenTest(isFir = true)
|
||||
builder.configureDumpHandlersForCodegenTest()
|
||||
builder.configureFirParser(parser)
|
||||
}
|
||||
}
|
||||
|
||||
+1
-1
@@ -82,7 +82,7 @@ open class AbstractFirSteppingTestBase(val parser: FirParser) : AbstractStepping
|
||||
|
||||
override fun configure(builder: TestConfigurationBuilder) {
|
||||
super.configure(builder)
|
||||
builder.configureDumpHandlersForCodegenTest(isFir = true)
|
||||
builder.configureDumpHandlersForCodegenTest()
|
||||
builder.configureFirParser(parser)
|
||||
}
|
||||
}
|
||||
|
||||
+2
-3
@@ -105,11 +105,10 @@ fun TestConfigurationBuilder.applyDumpSmapDirective() {
|
||||
}
|
||||
}
|
||||
|
||||
fun TestConfigurationBuilder.configureDumpHandlersForCodegenTest(isFir: Boolean = false) {
|
||||
fun TestConfigurationBuilder.configureDumpHandlersForCodegenTest() {
|
||||
configureIrHandlersStep {
|
||||
dumpHandlersForConverterStep()
|
||||
if (isFir)
|
||||
useAfterAnalysisCheckers(::FirIrDumpIdenticalChecker)
|
||||
useAfterAnalysisCheckers(::FirIrDumpIdenticalChecker)
|
||||
}
|
||||
configureJvmArtifactsHandlersStep {
|
||||
dumpHandlersForBackendStep()
|
||||
|
||||
Reference in New Issue
Block a user