[Tests] Specify custom LF in AbstractVersionRequirementTest
This commit is contained in:
committed by
TeamCityServer
parent
2e97e78e6a
commit
6f2b1ecb09
@@ -6,6 +6,7 @@
|
|||||||
package org.jetbrains.kotlin.serialization
|
package org.jetbrains.kotlin.serialization
|
||||||
|
|
||||||
import org.jetbrains.kotlin.config.AnalysisFlag
|
import org.jetbrains.kotlin.config.AnalysisFlag
|
||||||
|
import org.jetbrains.kotlin.config.LanguageFeature
|
||||||
import org.jetbrains.kotlin.config.LanguageVersion
|
import org.jetbrains.kotlin.config.LanguageVersion
|
||||||
import org.jetbrains.kotlin.config.LanguageVersionSettingsImpl
|
import org.jetbrains.kotlin.config.LanguageVersionSettingsImpl
|
||||||
import org.jetbrains.kotlin.descriptors.ClassDescriptor
|
import org.jetbrains.kotlin.descriptors.ClassDescriptor
|
||||||
@@ -32,11 +33,12 @@ abstract class AbstractVersionRequirementTest : TestCaseWithTmpdir() {
|
|||||||
analysisFlags: Map<AnalysisFlag<*>, Any?> = emptyMap(),
|
analysisFlags: Map<AnalysisFlag<*>, Any?> = emptyMap(),
|
||||||
fqNamesWithRequirements: List<String>,
|
fqNamesWithRequirements: List<String>,
|
||||||
fqNamesWithoutRequirement: List<String> = emptyList(),
|
fqNamesWithoutRequirement: List<String> = emptyList(),
|
||||||
shouldBeSingleRequirement: Boolean = true
|
shouldBeSingleRequirement: Boolean = true,
|
||||||
|
specificFeatures: Map<LanguageFeature, LanguageFeature.State> = emptyMap()
|
||||||
) {
|
) {
|
||||||
compileFiles(
|
compileFiles(
|
||||||
listOf(File("compiler/testData/versionRequirement/${getTestName(true)}.kt")),
|
listOf(File("compiler/testData/versionRequirement/${getTestName(true)}.kt")),
|
||||||
tmpdir, customLanguageVersion, analysisFlags
|
tmpdir, customLanguageVersion, analysisFlags, specificFeatures
|
||||||
)
|
)
|
||||||
val module = loadModule(tmpdir)
|
val module = loadModule(tmpdir)
|
||||||
|
|
||||||
@@ -116,7 +118,8 @@ abstract class AbstractVersionRequirementTest : TestCaseWithTmpdir() {
|
|||||||
files: List<File>,
|
files: List<File>,
|
||||||
outputDirectory: File,
|
outputDirectory: File,
|
||||||
languageVersion: LanguageVersion,
|
languageVersion: LanguageVersion,
|
||||||
analysisFlags: Map<AnalysisFlag<*>, Any?>
|
analysisFlags: Map<AnalysisFlag<*>, Any?>,
|
||||||
|
specificFeatures: Map<LanguageFeature, LanguageFeature.State>
|
||||||
)
|
)
|
||||||
|
|
||||||
protected abstract fun loadModule(directory: File): ModuleDescriptor
|
protected abstract fun loadModule(directory: File): ModuleDescriptor
|
||||||
|
|||||||
@@ -35,7 +35,8 @@ class JvmVersionRequirementTest : AbstractVersionRequirementTest() {
|
|||||||
files: List<File>,
|
files: List<File>,
|
||||||
outputDirectory: File,
|
outputDirectory: File,
|
||||||
languageVersion: LanguageVersion,
|
languageVersion: LanguageVersion,
|
||||||
analysisFlags: Map<AnalysisFlag<*>, Any?>
|
analysisFlags: Map<AnalysisFlag<*>, Any?>,
|
||||||
|
specificFeatures: Map<LanguageFeature, LanguageFeature.State>
|
||||||
) {
|
) {
|
||||||
LoadDescriptorUtil.compileKotlinToDirAndGetModule(
|
LoadDescriptorUtil.compileKotlinToDirAndGetModule(
|
||||||
listOf(File("compiler/testData/versionRequirement/${getTestName(true)}.kt")), outputDirectory,
|
listOf(File("compiler/testData/versionRequirement/${getTestName(true)}.kt")), outputDirectory,
|
||||||
@@ -47,7 +48,7 @@ class JvmVersionRequirementTest : AbstractVersionRequirementTest() {
|
|||||||
languageVersion,
|
languageVersion,
|
||||||
ApiVersion.createByLanguageVersion(languageVersion),
|
ApiVersion.createByLanguageVersion(languageVersion),
|
||||||
analysisFlags.toMap() + mapOf(AnalysisFlags.explicitApiVersion to true),
|
analysisFlags.toMap() + mapOf(AnalysisFlags.explicitApiVersion to true),
|
||||||
emptyMap()
|
specificFeatures
|
||||||
)
|
)
|
||||||
},
|
},
|
||||||
EnvironmentConfigFiles.JVM_CONFIG_FILES
|
EnvironmentConfigFiles.JVM_CONFIG_FILES
|
||||||
@@ -180,7 +181,10 @@ class JvmVersionRequirementTest : AbstractVersionRequirementTest() {
|
|||||||
"test.topLevelFunWithCR",
|
"test.topLevelFunWithCR",
|
||||||
"test.topLevelPropWithCR"
|
"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>,
|
files: List<File>,
|
||||||
outputDirectory: File,
|
outputDirectory: File,
|
||||||
languageVersion: LanguageVersion,
|
languageVersion: LanguageVersion,
|
||||||
analysisFlags: Map<AnalysisFlag<*>, Any?>
|
analysisFlags: Map<AnalysisFlag<*>, Any?>,
|
||||||
|
specificFeatures: Map<LanguageFeature, LanguageFeature.State>
|
||||||
) {
|
) {
|
||||||
val environment = createEnvironment(languageVersion)
|
val environment = createEnvironment(languageVersion)
|
||||||
val ktFiles = files.map { file ->
|
val ktFiles = files.map { file ->
|
||||||
|
|||||||
Reference in New Issue
Block a user