[FIR-TEST] Unify AbstractFirLoadCompiledKotlin and BuiltInsDeserializationForFirTestCase

This commit is contained in:
Dmitriy Novozhilov
2020-08-13 12:16:15 +03:00
parent 913ea9b56d
commit f32a0fe7ad
7 changed files with 121 additions and 118 deletions
@@ -0,0 +1,39 @@
/*
* Copyright 2010-2020 JetBrains s.r.o. and Kotlin Programming Language contributors.
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/
package org.jetbrains.kotlin.serialization.builtins
import com.intellij.openapi.util.io.FileUtil
import com.intellij.util.containers.ContainerUtil
import org.jetbrains.kotlin.builtins.KotlinBuiltIns
import org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment
import org.jetbrains.kotlin.descriptors.ModuleDescriptor
import org.jetbrains.kotlin.resolve.lazy.createResolveSessionForFiles
import org.jetbrains.kotlin.test.KotlinTestUtils
import java.io.File
import java.util.regex.Pattern
object BuiltinsTestUtils {
fun compileBuiltinsModule(environment: KotlinCoreEnvironment): ModuleDescriptor {
val files = KotlinTestUtils.loadToJetFiles(
environment, ContainerUtil.concat<File>(
allFilesUnder("core/builtins/native"),
allFilesUnder("core/builtins/src")
)
)
return createResolveSessionForFiles(environment.project, files, false).moduleDescriptor
}
@JvmField
val BUILTIN_PACKAGE_NAMES = listOf(
KotlinBuiltIns.BUILT_INS_PACKAGE_FQ_NAME,
KotlinBuiltIns.COLLECTIONS_PACKAGE_FQ_NAME,
KotlinBuiltIns.RANGES_PACKAGE_FQ_NAME
)
private fun allFilesUnder(directory: String): List<File?> {
return FileUtil.findFilesByMask(Pattern.compile(".*\\.kt"), File(directory))
}
}