From 8f0cf3f0cc4def4339649285c8874beb3a49bb1a Mon Sep 17 00:00:00 2001 From: Dmitrii Gridin Date: Tue, 17 Oct 2023 14:22:54 +0200 Subject: [PATCH] [SLC] allow multi-module test cases ^KT-62345 --- .../base/AbstractSymbolLightClassesTestBase.kt | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/analysis/symbol-light-classes/tests/org/jetbrains/kotlin/light/classes/symbol/base/AbstractSymbolLightClassesTestBase.kt b/analysis/symbol-light-classes/tests/org/jetbrains/kotlin/light/classes/symbol/base/AbstractSymbolLightClassesTestBase.kt index 7314386c672..5a4264b91a5 100644 --- a/analysis/symbol-light-classes/tests/org/jetbrains/kotlin/light/classes/symbol/base/AbstractSymbolLightClassesTestBase.kt +++ b/analysis/symbol-light-classes/tests/org/jetbrains/kotlin/light/classes/symbol/base/AbstractSymbolLightClassesTestBase.kt @@ -8,7 +8,8 @@ package org.jetbrains.kotlin.light.classes.symbol.base import com.intellij.openapi.project.Project import com.intellij.psi.PsiClass import com.intellij.psi.search.GlobalSearchScope -import org.jetbrains.kotlin.analysis.test.framework.base.AbstractAnalysisApiBasedSingleModuleTest +import org.jetbrains.kotlin.analysis.test.framework.base.AbstractAnalysisApiBasedTest +import org.jetbrains.kotlin.analysis.test.framework.project.structure.ktModuleProvider import org.jetbrains.kotlin.analysis.test.framework.services.libraries.CompiledLibraryProvider import org.jetbrains.kotlin.analysis.test.framework.services.libraries.CompilerExecutor import org.jetbrains.kotlin.analysis.test.framework.test.configurators.AnalysisApiTestConfigurator @@ -27,6 +28,7 @@ import org.jetbrains.kotlin.test.directives.model.Directive import org.jetbrains.kotlin.test.directives.model.DirectiveApplicability import org.jetbrains.kotlin.test.directives.model.SimpleDirectivesContainer import org.jetbrains.kotlin.test.model.TestModule +import org.jetbrains.kotlin.test.services.TestModuleStructure import org.jetbrains.kotlin.test.services.TestServices import org.jetbrains.kotlin.test.services.assertions import org.jetbrains.kotlin.test.services.service @@ -43,7 +45,7 @@ private const val TEST_MODULE_NAME = "light_idea_test_case" abstract class AbstractSymbolLightClassesTestBase( override val configurator: AnalysisApiTestConfigurator -) : AbstractAnalysisApiBasedSingleModuleTest() { +) : AbstractAnalysisApiBasedTest() { override fun configureTest(builder: TestConfigurationBuilder) { super.configureTest(builder) @@ -58,7 +60,13 @@ abstract class AbstractSymbolLightClassesTestBase( } } - override fun doTestByFileStructure(ktFiles: List, module: TestModule, testServices: TestServices) { + override fun doTestByModuleStructure(moduleStructure: TestModuleStructure, testServices: TestServices) { + val lastModule = moduleStructure.modules.last() + val ktFiles = testServices.ktModuleProvider.getModuleFiles(lastModule).filterIsInstance() + doTestByFileStructure(ktFiles, lastModule, testServices) + } + + open fun doTestByFileStructure(ktFiles: List, module: TestModule, testServices: TestServices) { if (isTestAgainstCompiledCode && CompilerExecutor.Directives.COMPILATION_ERRORS in module.directives) { return }