Analysis API: add normal FE10 import optimizer (taken from plugin code)

This commit is contained in:
Mikhail Glukhikh
2022-05-20 16:24:58 +02:00
committed by Ilya Kirillov
parent c29482f25f
commit 7fd441f16a
5 changed files with 677 additions and 13 deletions
@@ -14,7 +14,10 @@ import org.jetbrains.kotlin.test.services.assertions
abstract class AbstractAnalysisApiImportOptimizerTest : AbstractAnalysisApiBasedSingleModuleTest(){
override fun doTestByFileStructure(ktFiles: List<KtFile>, module: TestModule, testServices: TestServices) {
val mainKtFile = ktFiles.singleOrNull() ?: ktFiles.first { it.name == "main.kt" }
val unusedImports = analyseForTest(mainKtFile) { analyseImports(mainKtFile).unusedImports }
val unusedImports = analyseForTest(mainKtFile) {
val results = analyseImports(mainKtFile)
results.unusedImports
}
val unusedImportPaths = unusedImports
.map { it.importPath ?: error("Import $it should have an import path, instead was ${it.text}") }