[FIR IDE] Move test file analysis in FE10 Analysis API implementation to FrontendApiTestConfiguratorService

This commit is contained in:
Yan Zhulanow
2021-10-19 22:49:27 +09:00
committed by teamcityserver
parent a1280ed723
commit 8f39640237
27 changed files with 36 additions and 129 deletions
@@ -7,16 +7,8 @@ package org.jetbrains.kotlin.analysis.api.descriptors.test
import org.jetbrains.kotlin.analysis.api.impl.barebone.test.FrontendApiTestConfiguratorService
import org.jetbrains.kotlin.analysis.api.impl.base.test.AbstractReferenceResolveTest
import org.jetbrains.kotlin.psi.KtFile
import org.jetbrains.kotlin.test.model.TestModule
import org.jetbrains.kotlin.test.services.TestServices
abstract class AbstractKtFe10ReferenceResolveTest : AbstractReferenceResolveTest() {
override val configurator: FrontendApiTestConfiguratorService
get() = KtFe10FrontendApiTestConfiguratorService
override fun doTestByFileStructure(ktFiles: List<KtFile>, module: TestModule, testServices: TestServices) {
analyzeTestFiles(ktFiles, module, testServices)
super.doTestByFileStructure(ktFiles, module, testServices)
}
}
@@ -7,16 +7,8 @@ package org.jetbrains.kotlin.analysis.api.descriptors.test
import org.jetbrains.kotlin.analysis.api.impl.barebone.test.FrontendApiTestConfiguratorService
import org.jetbrains.kotlin.analysis.api.impl.base.test.fir.AbstractResolveCallTest
import org.jetbrains.kotlin.psi.KtFile
import org.jetbrains.kotlin.test.model.TestModule
import org.jetbrains.kotlin.test.services.TestServices
abstract class AbstractKtFe10ResolveCallTest : AbstractResolveCallTest() {
override val configurator: FrontendApiTestConfiguratorService
get() = KtFe10FrontendApiTestConfiguratorService
override fun doTestByFileStructure(ktFiles: List<KtFile>, module: TestModule, testServices: TestServices) {
analyzeTestFiles(ktFiles, module, testServices)
super.doTestByFileStructure(ktFiles, module, testServices)
}
}
@@ -49,12 +49,12 @@ object KtFe10FrontendApiTestConfiguratorService : FrontendApiTestConfiguratorSer
application.registerService(KotlinReferenceProviderContributor::class.java, KtFe10KotlinReferenceProviderContributor::class.java)
}
}
}
fun analyzeTestFiles(ktFiles: List<KtFile>, module: TestModule, testServices: TestServices) {
val compilerConfigurationProvider = testServices.compilerConfigurationProvider
val project = compilerConfigurationProvider.getProject(module)
val compilerConfiguration = compilerConfigurationProvider.getCompilerConfiguration(module)
val packageProviderFactory = compilerConfigurationProvider.getPackagePartProviderFactory(module)
JvmResolveUtil.analyze(project, ktFiles, compilerConfiguration, packageProviderFactory)
override fun prepareTestFiles(files: List<KtFile>, module: TestModule, testServices: TestServices) {
val compilerConfigurationProvider = testServices.compilerConfigurationProvider
val project = compilerConfigurationProvider.getProject(module)
val compilerConfiguration = compilerConfigurationProvider.getCompilerConfiguration(module)
val packageProviderFactory = compilerConfigurationProvider.getPackagePartProviderFactory(module)
JvmResolveUtil.analyze(project, files, compilerConfiguration, packageProviderFactory)
}
}
@@ -6,19 +6,10 @@
package org.jetbrains.kotlin.analysis.api.descriptors.test.components
import org.jetbrains.kotlin.analysis.api.descriptors.test.KtFe10FrontendApiTestConfiguratorService
import org.jetbrains.kotlin.analysis.api.descriptors.test.analyzeTestFiles
import org.jetbrains.kotlin.analysis.api.impl.barebone.test.FrontendApiTestConfiguratorService
import org.jetbrains.kotlin.analysis.api.impl.base.test.components.AbstractExpectedExpressionTypeTest
import org.jetbrains.kotlin.psi.KtFile
import org.jetbrains.kotlin.test.model.TestModule
import org.jetbrains.kotlin.test.services.TestServices
abstract class AbstractKtFe10ExpectedExpressionTypeTest : AbstractExpectedExpressionTypeTest() {
override val configurator: FrontendApiTestConfiguratorService
get() = KtFe10FrontendApiTestConfiguratorService
override fun doTestByFileStructure(ktFile: KtFile, module: TestModule, testServices: TestServices) {
analyzeTestFiles(listOf(ktFile), module, testServices)
super.doTestByFileStructure(ktFile, module, testServices)
}
}
@@ -6,19 +6,10 @@
package org.jetbrains.kotlin.analysis.api.descriptors.test.components
import org.jetbrains.kotlin.analysis.api.descriptors.test.KtFe10FrontendApiTestConfiguratorService
import org.jetbrains.kotlin.analysis.api.descriptors.test.analyzeTestFiles
import org.jetbrains.kotlin.analysis.api.impl.barebone.test.FrontendApiTestConfiguratorService
import org.jetbrains.kotlin.analysis.api.impl.base.test.components.AbstractHLExpressionTypeTest
import org.jetbrains.kotlin.psi.KtFile
import org.jetbrains.kotlin.test.model.TestModule
import org.jetbrains.kotlin.test.services.TestServices
abstract class AbstractKtFe10HLExpressionTypeTest : AbstractHLExpressionTypeTest() {
override val configurator: FrontendApiTestConfiguratorService
get() = KtFe10FrontendApiTestConfiguratorService
override fun doTestByFileStructure(ktFile: KtFile, module: TestModule, testServices: TestServices) {
analyzeTestFiles(listOf(ktFile), module, testServices)
super.doTestByFileStructure(ktFile, module, testServices)
}
}
@@ -6,19 +6,10 @@
package org.jetbrains.kotlin.analysis.api.descriptors.test.components
import org.jetbrains.kotlin.analysis.api.descriptors.test.KtFe10FrontendApiTestConfiguratorService
import org.jetbrains.kotlin.analysis.api.descriptors.test.analyzeTestFiles
import org.jetbrains.kotlin.analysis.api.impl.barebone.test.FrontendApiTestConfiguratorService
import org.jetbrains.kotlin.analysis.api.impl.base.test.components.AbstractHasCommonSubtypeTest
import org.jetbrains.kotlin.psi.KtFile
import org.jetbrains.kotlin.test.model.TestModule
import org.jetbrains.kotlin.test.services.TestServices
abstract class AbstractKtFe10HasCommonSubtypeTest : AbstractHasCommonSubtypeTest() {
override val configurator: FrontendApiTestConfiguratorService
get() = KtFe10FrontendApiTestConfiguratorService
override fun doTestByFileStructure(ktFile: KtFile, module: TestModule, testServices: TestServices) {
analyzeTestFiles(listOf(ktFile), module, testServices)
super.doTestByFileStructure(ktFile, module, testServices)
}
}
@@ -6,19 +6,10 @@
package org.jetbrains.kotlin.analysis.api.descriptors.test.components
import org.jetbrains.kotlin.analysis.api.descriptors.test.KtFe10FrontendApiTestConfiguratorService
import org.jetbrains.kotlin.analysis.api.descriptors.test.analyzeTestFiles
import org.jetbrains.kotlin.analysis.api.impl.barebone.test.FrontendApiTestConfiguratorService
import org.jetbrains.kotlin.analysis.api.impl.base.test.components.AbstractOverriddenDeclarationProviderTest
import org.jetbrains.kotlin.psi.KtFile
import org.jetbrains.kotlin.test.model.TestModule
import org.jetbrains.kotlin.test.services.TestServices
abstract class AbstractKtFe10OverriddenDeclarationProviderTest : AbstractOverriddenDeclarationProviderTest() {
override val configurator: FrontendApiTestConfiguratorService
get() = KtFe10FrontendApiTestConfiguratorService
override fun doTestByFileStructure(ktFiles: List<KtFile>, module: TestModule, testServices: TestServices) {
analyzeTestFiles(ktFiles, module, testServices)
super.doTestByFileStructure(ktFiles, module, testServices)
}
}
@@ -6,19 +6,10 @@
package org.jetbrains.kotlin.analysis.api.descriptors.test.components
import org.jetbrains.kotlin.analysis.api.descriptors.test.KtFe10FrontendApiTestConfiguratorService
import org.jetbrains.kotlin.analysis.api.descriptors.test.analyzeTestFiles
import org.jetbrains.kotlin.analysis.api.impl.barebone.test.FrontendApiTestConfiguratorService
import org.jetbrains.kotlin.analysis.api.impl.base.test.components.AbstractRendererTest
import org.jetbrains.kotlin.psi.KtFile
import org.jetbrains.kotlin.test.model.TestModule
import org.jetbrains.kotlin.test.services.TestServices
abstract class AbstractKtFe10RendererTest : AbstractRendererTest() {
override val configurator: FrontendApiTestConfiguratorService
get() = KtFe10FrontendApiTestConfiguratorService
override fun doTestByFileStructure(ktFile: KtFile, module: TestModule, testServices: TestServices) {
analyzeTestFiles(listOf(ktFile), module, testServices)
super.doTestByFileStructure(ktFile, module, testServices)
}
}
@@ -6,19 +6,10 @@
package org.jetbrains.kotlin.analysis.api.descriptors.test.scopes
import org.jetbrains.kotlin.analysis.api.descriptors.test.KtFe10FrontendApiTestConfiguratorService
import org.jetbrains.kotlin.analysis.api.descriptors.test.analyzeTestFiles
import org.jetbrains.kotlin.analysis.api.impl.barebone.test.FrontendApiTestConfiguratorService
import org.jetbrains.kotlin.analysis.api.impl.base.test.scopes.AbstractFileScopeTest
import org.jetbrains.kotlin.psi.KtFile
import org.jetbrains.kotlin.test.model.TestModule
import org.jetbrains.kotlin.test.services.TestServices
abstract class AbstractKtFe10FileScopeTest : AbstractFileScopeTest() {
override val configurator: FrontendApiTestConfiguratorService
get() = KtFe10FrontendApiTestConfiguratorService
override fun doTestByFileStructure(ktFile: KtFile, module: TestModule, testServices: TestServices) {
analyzeTestFiles(listOf(ktFile), module, testServices)
super.doTestByFileStructure(ktFile, module, testServices)
}
}
@@ -7,22 +7,14 @@ package org.jetbrains.kotlin.analysis.api.descriptors.test.scopes
import org.jetbrains.kotlin.analysis.api.descriptors.test.KtFe10FrontendApiTestConfiguratorService
import org.jetbrains.kotlin.analysis.api.descriptors.test.KtFe10TestWithOutOfBlockModification
import org.jetbrains.kotlin.analysis.api.descriptors.test.analyzeTestFiles
import org.jetbrains.kotlin.analysis.api.impl.barebone.test.FrontendApiTestConfiguratorService
import org.jetbrains.kotlin.analysis.api.impl.base.test.scopes.AbstractMemberScopeByFqNameTest
import org.jetbrains.kotlin.psi.KtFile
import org.jetbrains.kotlin.test.model.TestModule
import org.jetbrains.kotlin.test.services.TestServices
abstract class AbstractKtFe10MemberScopeByFqNameTest : AbstractMemberScopeByFqNameTest() {
override val configurator: FrontendApiTestConfiguratorService
get() = KtFe10FrontendApiTestConfiguratorService
override fun doTestByFileStructure(ktFile: KtFile, module: TestModule, testServices: TestServices) {
analyzeTestFiles(listOf(ktFile), module, testServices)
super.doTestByFileStructure(ktFile, module, testServices)
}
override fun doOutOfBlockModification(ktFile: KtFile) {
KtFe10TestWithOutOfBlockModification.doOutOfBlockModification(ktFile)
}
@@ -6,7 +6,6 @@
package org.jetbrains.kotlin.analysis.api.descriptors.test.symbols
import org.jetbrains.kotlin.analysis.api.descriptors.test.KtFe10FrontendApiTestConfiguratorService
import org.jetbrains.kotlin.analysis.api.descriptors.test.analyzeTestFiles
import org.jetbrains.kotlin.analysis.api.impl.barebone.test.FrontendApiTestConfiguratorService
import org.jetbrains.kotlin.analysis.api.impl.base.test.components.AbstractCompileTimeConstantEvaluatorTest
import org.jetbrains.kotlin.psi.KtFile
@@ -16,9 +15,4 @@ import org.jetbrains.kotlin.test.services.TestServices
abstract class AbstractKtFe10CompileTimeConstantEvaluatorTest : AbstractCompileTimeConstantEvaluatorTest() {
override val configurator: FrontendApiTestConfiguratorService
get() = KtFe10FrontendApiTestConfiguratorService
override fun doTestByFileStructure(ktFile: KtFile, module: TestModule, testServices: TestServices) {
analyzeTestFiles(listOf(ktFile), module, testServices)
super.doTestByFileStructure(ktFile, module, testServices)
}
}
@@ -7,22 +7,14 @@ package org.jetbrains.kotlin.analysis.api.descriptors.test.symbols
import org.jetbrains.kotlin.analysis.api.descriptors.test.KtFe10FrontendApiTestConfiguratorService
import org.jetbrains.kotlin.analysis.api.descriptors.test.KtFe10TestWithOutOfBlockModification
import org.jetbrains.kotlin.analysis.api.descriptors.test.analyzeTestFiles
import org.jetbrains.kotlin.analysis.api.impl.barebone.test.FrontendApiTestConfiguratorService
import org.jetbrains.kotlin.analysis.api.impl.base.test.symbols.AbstractSymbolByFqNameTest
import org.jetbrains.kotlin.psi.KtFile
import org.jetbrains.kotlin.test.model.TestModule
import org.jetbrains.kotlin.test.services.TestServices
abstract class AbstractKtFe10SymbolByFqNameTest : AbstractSymbolByFqNameTest() {
override val configurator: FrontendApiTestConfiguratorService
get() = KtFe10FrontendApiTestConfiguratorService
override fun doTestByFileStructure(ktFile: KtFile, module: TestModule, testServices: TestServices) {
analyzeTestFiles(listOf(ktFile), module, testServices)
super.doTestByFileStructure(ktFile, module, testServices)
}
override fun doOutOfBlockModification(ktFile: KtFile) {
KtFe10TestWithOutOfBlockModification.doOutOfBlockModification(ktFile)
}
@@ -7,22 +7,14 @@ package org.jetbrains.kotlin.analysis.api.descriptors.test.symbols
import org.jetbrains.kotlin.analysis.api.descriptors.test.KtFe10FrontendApiTestConfiguratorService
import org.jetbrains.kotlin.analysis.api.descriptors.test.KtFe10TestWithOutOfBlockModification
import org.jetbrains.kotlin.analysis.api.descriptors.test.analyzeTestFiles
import org.jetbrains.kotlin.analysis.api.impl.barebone.test.FrontendApiTestConfiguratorService
import org.jetbrains.kotlin.analysis.api.impl.base.test.symbols.AbstractSymbolByPsiTest
import org.jetbrains.kotlin.psi.KtFile
import org.jetbrains.kotlin.test.model.TestModule
import org.jetbrains.kotlin.test.services.TestServices
abstract class AbstractKtFe10SymbolByPsiTest : AbstractSymbolByPsiTest() {
override val configurator: FrontendApiTestConfiguratorService
get() = KtFe10FrontendApiTestConfiguratorService
override fun doTestByFileStructure(ktFile: KtFile, module: TestModule, testServices: TestServices) {
analyzeTestFiles(listOf(ktFile), module, testServices)
super.doTestByFileStructure(ktFile, module, testServices)
}
override fun doOutOfBlockModification(ktFile: KtFile) {
KtFe10TestWithOutOfBlockModification.doOutOfBlockModification(ktFile)
}
@@ -7,22 +7,14 @@ package org.jetbrains.kotlin.analysis.api.descriptors.test.symbols
import org.jetbrains.kotlin.analysis.api.descriptors.test.KtFe10FrontendApiTestConfiguratorService
import org.jetbrains.kotlin.analysis.api.descriptors.test.KtFe10TestWithOutOfBlockModification
import org.jetbrains.kotlin.analysis.api.descriptors.test.analyzeTestFiles
import org.jetbrains.kotlin.analysis.api.impl.barebone.test.FrontendApiTestConfiguratorService
import org.jetbrains.kotlin.analysis.api.impl.base.test.symbols.AbstractSymbolByReferenceTest
import org.jetbrains.kotlin.psi.KtFile
import org.jetbrains.kotlin.test.model.TestModule
import org.jetbrains.kotlin.test.services.TestServices
abstract class AbstractKtFe10SymbolByReferenceTest : AbstractSymbolByReferenceTest() {
override val configurator: FrontendApiTestConfiguratorService
get() = KtFe10FrontendApiTestConfiguratorService
override fun doTestByFileStructure(ktFile: KtFile, module: TestModule, testServices: TestServices) {
analyzeTestFiles(listOf(ktFile), module, testServices)
super.doTestByFileStructure(ktFile, module, testServices)
}
override fun doOutOfBlockModification(ktFile: KtFile) {
KtFe10TestWithOutOfBlockModification.doOutOfBlockModification(ktFile)
}