[FIR, Native] extract test initialization code to functions from AbstractDiagnosticsNativeTest for further reuse in LL FIR tests
^KT-62910
This commit is contained in:
committed by
Space Team
parent
500dd20277
commit
b6fdd7cacc
+45
-35
@@ -41,33 +41,38 @@ abstract class AbstractDiagnosticsNativeTestBase<R : ResultingArtifact.FrontendO
|
||||
targetPlatform = NativePlatforms.unspecifiedNativePlatform
|
||||
dependencyKind = DependencyKind.Source
|
||||
}
|
||||
|
||||
defaultDirectives {
|
||||
+JvmEnvironmentConfigurationDirectives.USE_PSI_CLASS_FILES_READING
|
||||
+ConfigurationDirectives.WITH_STDLIB
|
||||
}
|
||||
|
||||
enableMetaInfoHandler()
|
||||
|
||||
useConfigurators(
|
||||
::CommonEnvironmentConfigurator,
|
||||
::NativeEnvironmentConfigurator,
|
||||
)
|
||||
|
||||
useMetaInfoProcessors(::OldNewInferenceMetaInfoProcessor)
|
||||
useAdditionalSourceProviders(
|
||||
::AdditionalDiagnosticsSourceFilesProvider,
|
||||
::CoroutineHelpersSourceFilesProvider,
|
||||
)
|
||||
|
||||
facadeStep(frontend)
|
||||
|
||||
baseNativeDiagnosticTestConfiguration(frontend)
|
||||
handlersSetup(this)
|
||||
}
|
||||
}
|
||||
|
||||
forTestsMatching("testData/diagnostics/nativeTests/*") {
|
||||
defaultDirectives {
|
||||
+LanguageSettingsDirectives.ALLOW_KOTLIN_PACKAGE
|
||||
}
|
||||
fun <R : ResultingArtifact.FrontendOutput<R>> TestConfigurationBuilder.baseNativeDiagnosticTestConfiguration(
|
||||
frontendFacade: Constructor<FrontendFacade<R>>,
|
||||
) {
|
||||
defaultDirectives {
|
||||
+JvmEnvironmentConfigurationDirectives.USE_PSI_CLASS_FILES_READING
|
||||
+ConfigurationDirectives.WITH_STDLIB
|
||||
}
|
||||
|
||||
enableMetaInfoHandler()
|
||||
|
||||
useConfigurators(
|
||||
::CommonEnvironmentConfigurator,
|
||||
::NativeEnvironmentConfigurator,
|
||||
)
|
||||
|
||||
useMetaInfoProcessors(::OldNewInferenceMetaInfoProcessor)
|
||||
useAdditionalSourceProviders(
|
||||
::AdditionalDiagnosticsSourceFilesProvider,
|
||||
::CoroutineHelpersSourceFilesProvider,
|
||||
)
|
||||
|
||||
facadeStep(frontendFacade)
|
||||
|
||||
|
||||
forTestsMatching("testData/diagnostics/nativeTests/*") {
|
||||
defaultDirectives {
|
||||
+LanguageSettingsDirectives.ALLOW_KOTLIN_PACKAGE
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -98,16 +103,7 @@ abstract class AbstractFirNativeDiagnosticsTestBase(val parser: FirParser) : Abs
|
||||
get() = ::FirFrontendFacade
|
||||
|
||||
override fun handlersSetup(builder: TestConfigurationBuilder) {
|
||||
builder.firHandlersStep {
|
||||
useHandlers(
|
||||
::FirDiagnosticsHandler,
|
||||
::FirDumpHandler,
|
||||
::FirCfgDumpHandler,
|
||||
::FirCfgConsistencyHandler,
|
||||
::FirResolvedTypesVerifier,
|
||||
::FirScopeDumpHandler,
|
||||
)
|
||||
}
|
||||
builder.baseFirNativeDiagnosticTestConfiguration()
|
||||
}
|
||||
|
||||
override fun configure(builder: TestConfigurationBuilder) {
|
||||
@@ -123,5 +119,19 @@ abstract class AbstractFirNativeDiagnosticsTestBase(val parser: FirParser) : Abs
|
||||
}
|
||||
}
|
||||
|
||||
fun TestConfigurationBuilder.baseFirNativeDiagnosticTestConfiguration() {
|
||||
firHandlersStep {
|
||||
useHandlers(
|
||||
::FirDiagnosticsHandler,
|
||||
::FirDumpHandler,
|
||||
::FirCfgDumpHandler,
|
||||
::FirCfgConsistencyHandler,
|
||||
::FirResolvedTypesVerifier,
|
||||
::FirScopeDumpHandler,
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
abstract class AbstractFirPsiNativeDiagnosticsTest : AbstractFirNativeDiagnosticsTestBase(FirParser.Psi)
|
||||
abstract class AbstractFirLightTreeNativeDiagnosticsTest : AbstractFirNativeDiagnosticsTestBase(FirParser.LightTree)
|
||||
|
||||
Reference in New Issue
Block a user