FIR IDE: add ability to run multimodule tests

This commit is contained in:
Ilya Kirillov
2021-06-22 17:12:39 +02:00
committed by teamcityserver
parent 1cb34541bd
commit a9bb577154
12 changed files with 179 additions and 112 deletions
@@ -28,6 +28,7 @@ class TestConfigurationBuilder {
private val sourcePreprocessors: MutableList<Constructor<SourceFilePreprocessor>> = mutableListOf()
private val additionalMetaInfoProcessors: MutableList<Constructor<AdditionalMetaInfoProcessor>> = mutableListOf()
private val environmentConfigurators: MutableList<Constructor<EnvironmentConfigurator>> = mutableListOf()
private val preAnalysisHandlers: MutableList<Constructor<PreAnalysisHandler>> = mutableListOf()
private val additionalSourceProviders: MutableList<Constructor<AdditionalSourceProvider>> = mutableListOf()
private val moduleStructureTransformers: MutableList<ModuleStructureTransformer> = mutableListOf()
@@ -131,6 +132,10 @@ class TestConfigurationBuilder {
this.environmentConfigurators += environmentConfigurators
}
fun usePreAnalysisHandlers(vararg handlers: Constructor<PreAnalysisHandler>) {
this.preAnalysisHandlers += handlers
}
fun useMetaInfoProcessors(vararg updaters: Constructor<AdditionalMetaInfoProcessor>) {
additionalMetaInfoProcessors += updaters
}
@@ -189,6 +194,7 @@ class TestConfigurationBuilder {
additionalMetaInfoProcessors,
environmentConfigurators,
additionalSourceProviders,
preAnalysisHandlers,
moduleStructureTransformers,
metaTestConfigurators,
afterAnalysisCheckers,
@@ -33,6 +33,7 @@ class TestConfigurationImpl(
environmentConfigurators: List<Constructor<EnvironmentConfigurator>>,
additionalSourceProviders: List<Constructor<AdditionalSourceProvider>>,
preAnalysisHandlers: List<Constructor<PreAnalysisHandler>>,
moduleStructureTransformers: List<ModuleStructureTransformer>,
metaTestConfigurators: List<Constructor<MetaTestConfigurator>>,
afterAnalysisCheckers: List<Constructor<AfterAnalysisChecker>>,
@@ -70,6 +71,9 @@ class TestConfigurationImpl(
}
}
override val preAnalysisHandlers: List<PreAnalysisHandler> =
preAnalysisHandlers.map { it.invoke(testServices) }
override val moduleStructureExtractor: ModuleStructureExtractor = ModuleStructureExtractorImpl(
testServices,
additionalSourceProviders.map { it.invoke(testServices) }.also {