[Tests] Specify custom LF in AbstractVersionRequirementTest

This commit is contained in:
Anastasiya Shadrina
2021-11-10 19:11:34 +07:00
committed by TeamCityServer
parent 2e97e78e6a
commit 6f2b1ecb09
3 changed files with 15 additions and 7 deletions
@@ -6,6 +6,7 @@
package org.jetbrains.kotlin.serialization
import org.jetbrains.kotlin.config.AnalysisFlag
import org.jetbrains.kotlin.config.LanguageFeature
import org.jetbrains.kotlin.config.LanguageVersion
import org.jetbrains.kotlin.config.LanguageVersionSettingsImpl
import org.jetbrains.kotlin.descriptors.ClassDescriptor
@@ -32,11 +33,12 @@ abstract class AbstractVersionRequirementTest : TestCaseWithTmpdir() {
analysisFlags: Map<AnalysisFlag<*>, Any?> = emptyMap(),
fqNamesWithRequirements: List<String>,
fqNamesWithoutRequirement: List<String> = emptyList(),
shouldBeSingleRequirement: Boolean = true
shouldBeSingleRequirement: Boolean = true,
specificFeatures: Map<LanguageFeature, LanguageFeature.State> = emptyMap()
) {
compileFiles(
listOf(File("compiler/testData/versionRequirement/${getTestName(true)}.kt")),
tmpdir, customLanguageVersion, analysisFlags
tmpdir, customLanguageVersion, analysisFlags, specificFeatures
)
val module = loadModule(tmpdir)
@@ -116,7 +118,8 @@ abstract class AbstractVersionRequirementTest : TestCaseWithTmpdir() {
files: List<File>,
outputDirectory: File,
languageVersion: LanguageVersion,
analysisFlags: Map<AnalysisFlag<*>, Any?>
analysisFlags: Map<AnalysisFlag<*>, Any?>,
specificFeatures: Map<LanguageFeature, LanguageFeature.State>
)
protected abstract fun loadModule(directory: File): ModuleDescriptor
@@ -35,7 +35,8 @@ class JvmVersionRequirementTest : AbstractVersionRequirementTest() {
files: List<File>,
outputDirectory: File,
languageVersion: LanguageVersion,
analysisFlags: Map<AnalysisFlag<*>, Any?>
analysisFlags: Map<AnalysisFlag<*>, Any?>,
specificFeatures: Map<LanguageFeature, LanguageFeature.State>
) {
LoadDescriptorUtil.compileKotlinToDirAndGetModule(
listOf(File("compiler/testData/versionRequirement/${getTestName(true)}.kt")), outputDirectory,
@@ -47,7 +48,7 @@ class JvmVersionRequirementTest : AbstractVersionRequirementTest() {
languageVersion,
ApiVersion.createByLanguageVersion(languageVersion),
analysisFlags.toMap() + mapOf(AnalysisFlags.explicitApiVersion to true),
emptyMap()
specificFeatures
)
},
EnvironmentConfigFiles.JVM_CONFIG_FILES
@@ -180,7 +181,10 @@ class JvmVersionRequirementTest : AbstractVersionRequirementTest() {
"test.topLevelFunWithCR",
"test.topLevelPropWithCR"
),
customLanguageVersion = LanguageVersion.KOTLIN_1_7
customLanguageVersion = LanguageVersion.KOTLIN_1_7,
specificFeatures = mapOf(
LanguageFeature.ContextReceivers to LanguageFeature.State.ENABLED
)
)
}
}
@@ -36,7 +36,8 @@ class JsVersionRequirementTest : AbstractVersionRequirementTest() {
files: List<File>,
outputDirectory: File,
languageVersion: LanguageVersion,
analysisFlags: Map<AnalysisFlag<*>, Any?>
analysisFlags: Map<AnalysisFlag<*>, Any?>,
specificFeatures: Map<LanguageFeature, LanguageFeature.State>
) {
val environment = createEnvironment(languageVersion)
val ktFiles = files.map { file ->