[LL API] Adjust services required by LLFirBuiltinsSessionFactory

As 'initialiseVirtualFileFinderServices()' that is run during
test initialization collects transitive dependencies, all of them
must be ready. However, 'KtNotUnderContentRootModuleForTest' has a
built-in dependency provided by 'LLFirBuiltinsSessionFactory'.
This commit is contained in:
Yan Zhulanow
2023-01-24 17:56:04 +09:00
committed by Space Team
parent f199671c4d
commit f6f667c387
10 changed files with 38 additions and 13 deletions
@@ -103,9 +103,15 @@ object StandaloneProjectFactory {
val javaModuleGraph = JavaModuleGraph(javaModuleFinder)
val allSourceFileRoots = sourceFiles.map { JavaRoot(it.virtualFile, JavaRoot.RootType.SOURCE) }
val libraryRoots = getAllBinaryRoots(modules, environment)
val jdkRoots = getDefaultJdkModuleRoots(javaModuleFinder, javaModuleGraph)
project.registerService(
JavaModuleResolver::class.java,
CliJavaModuleResolver(javaModuleGraph, emptyList(), javaModuleFinder.systemModules.toList(), project)
)
val libraryRoots = getAllBinaryRoots(modules, environment)
val rootsWithSingleJavaFileRoots = buildList {
addAll(libraryRoots)
addAll(allSourceFileRoots)
@@ -148,11 +154,6 @@ object StandaloneProjectFactory {
true
)
project.registerService(
JavaModuleResolver::class.java,
CliJavaModuleResolver(javaModuleGraph, emptyList(), javaModuleFinder.systemModules.toList(), project)
)
val finderFactory = CliVirtualFileFinderFactory(rootsIndex, false)
project.registerService(MetadataFinderFactory::class.java, finderFactory)