[LL API] Migrate 'getKtModule()' usages to 'ProjectStructureProvider'

Ensure the contextual module is passed wherever possible.

^KT-57559 Fixed
This commit is contained in:
Yan Zhulanow
2023-04-18 17:25:34 +09:00
committed by Space Team
parent c90d094af6
commit e9c077220f
31 changed files with 187 additions and 133 deletions
@@ -5,19 +5,18 @@
package org.jetbrains.kotlin.analysis.api.impl.base.test.cases.symbols
import org.jetbrains.kotlin.analysis.api.renderer.declarations.KtDeclarationRenderer
import org.jetbrains.kotlin.analysis.api.renderer.declarations.impl.KtDeclarationRendererForDebug
import org.jetbrains.kotlin.analysis.api.symbols.*
import org.jetbrains.kotlin.analysis.api.symbols.pointers.KtSymbolPointer
import org.jetbrains.kotlin.analysis.utils.printer.prettyPrint
import org.jetbrains.kotlin.test.services.TestServices
import org.jetbrains.kotlin.test.services.assertions
import org.jetbrains.kotlin.analysis.project.structure.getKtModule
import org.jetbrains.kotlin.analysis.api.symbols.DebugSymbolRenderer
import org.jetbrains.kotlin.analysis.api.symbols.KtDeclarationSymbol
import org.jetbrains.kotlin.analysis.project.structure.ProjectStructureProvider
import org.jetbrains.kotlin.analysis.test.framework.base.AbstractAnalysisApiBasedTest
import org.jetbrains.kotlin.analysis.test.framework.services.expressionMarkerProvider
import org.jetbrains.kotlin.analysis.utils.printer.prettyPrint
import org.jetbrains.kotlin.psi.KtDeclaration
import org.jetbrains.kotlin.psi.KtElement
import org.jetbrains.kotlin.test.services.TestModuleStructure
import org.jetbrains.kotlin.test.services.TestServices
import org.jetbrains.kotlin.test.services.assertions
abstract class AbstractSymbolRestoreFromDifferentModuleTest : AbstractAnalysisApiBasedTest() {
private val defaultRenderer = KtDeclarationRendererForDebug.WITH_QUALIFIED_NAMES
@@ -33,6 +32,9 @@ abstract class AbstractSymbolRestoreFromDifferentModuleTest : AbstractAnalysisAp
caretTag = "restoreAt"
).single().first
val declarationModule = ProjectStructureProvider.getModule(declaration, contextualModule = null)
val restoreAtModule = ProjectStructureProvider.getModule(restoreAt, contextualModule = null)
val (debugRendered, prettyRendered, pointer) = analyseForTest(declaration) {
val symbol = declaration.getSymbol()
val pointer = symbol.createPointer()
@@ -46,19 +48,19 @@ abstract class AbstractSymbolRestoreFromDifferentModuleTest : AbstractAnalysisAp
}
val actualDebug = prettyPrint {
appendLine("Inital from ${declaration.getKtModule().moduleDescription}:")
appendLine("Inital from ${declarationModule.moduleDescription}:")
appendLine(debugRendered)
appendLine()
appendLine("Restored in ${restoreAt.getKtModule().moduleDescription}:")
appendLine("Restored in ${restoreAtModule.moduleDescription}:")
appendLine(debugRenderedRestored ?: NOT_RESTORED)
}
testServices.assertions.assertEqualsToTestDataFileSibling(actualDebug)
val actualPretty = prettyPrint {
appendLine("Inital from ${declaration.getKtModule().moduleDescription}:")
appendLine("Inital from ${declarationModule.moduleDescription}:")
appendLine(prettyRendered)
appendLine()
appendLine("Restored in ${restoreAt.getKtModule().moduleDescription}:")
appendLine("Restored in ${restoreAtModule.moduleDescription}:")
appendLine(prettyRenderedRestored ?: NOT_RESTORED)
}
testServices.assertions.assertEqualsToTestDataFileSibling(actualPretty, extension = ".pretty.txt")