From 28e539b1582570737d99bf1ee6105b26975ac175 Mon Sep 17 00:00:00 2001 From: Mikhail Zarechenskiy Date: Thu, 9 Nov 2017 11:02:22 +0300 Subject: [PATCH] Simplify `CompilerTestLanguageVersionSettings`: merge two maps into one --- .../checkers/CompilerTestLanguageVersionSettings.kt | 10 ++++------ .../org/jetbrains/kotlin/codegen/CodegenTestCase.java | 2 -- 2 files changed, 4 insertions(+), 8 deletions(-) diff --git a/compiler/tests-common/tests/org/jetbrains/kotlin/checkers/CompilerTestLanguageVersionSettings.kt b/compiler/tests-common/tests/org/jetbrains/kotlin/checkers/CompilerTestLanguageVersionSettings.kt index 6f93d8e1db2..78c50ef2324 100644 --- a/compiler/tests-common/tests/org/jetbrains/kotlin/checkers/CompilerTestLanguageVersionSettings.kt +++ b/compiler/tests-common/tests/org/jetbrains/kotlin/checkers/CompilerTestLanguageVersionSettings.kt @@ -27,24 +27,22 @@ const val LANGUAGE_DIRECTIVE = "LANGUAGE" const val API_VERSION_DIRECTIVE = "API_VERSION" data class CompilerTestLanguageVersionSettings( - private val languageFeatures: Map, + private val initialLanguageFeatures: Map, override val apiVersion: ApiVersion, override val languageVersion: LanguageVersion, - private val specificFeatures: Map = specificFeaturesForTests(), private val analysisFlags: Map, Any?> = emptyMap() ) : LanguageVersionSettings { + private val languageFeatures = initialLanguageFeatures + specificFeaturesForTests() private val delegate = LanguageVersionSettingsImpl(languageVersion, apiVersion) override fun getFeatureSupport(feature: LanguageFeature): LanguageFeature.State = - specificFeatures[feature] ?: - languageFeatures[feature] ?: - delegate.getFeatureSupport(feature) + languageFeatures[feature] ?: delegate.getFeatureSupport(feature) @Suppress("UNCHECKED_CAST") override fun getFlag(flag: AnalysisFlag): T = analysisFlags[flag] as T? ?: flag.defaultValue } -fun specificFeaturesForTests(): Map { +private fun specificFeaturesForTests(): Map { return if (System.getProperty("kotlin.ni") == "true") mapOf(LanguageFeature.NewInference to LanguageFeature.State.ENABLED) else diff --git a/compiler/tests-common/tests/org/jetbrains/kotlin/codegen/CodegenTestCase.java b/compiler/tests-common/tests/org/jetbrains/kotlin/codegen/CodegenTestCase.java index 5b7c36049f1..d4b9df6b076 100644 --- a/compiler/tests-common/tests/org/jetbrains/kotlin/codegen/CodegenTestCase.java +++ b/compiler/tests-common/tests/org/jetbrains/kotlin/codegen/CodegenTestCase.java @@ -33,7 +33,6 @@ import org.jetbrains.kotlin.backend.common.output.OutputFile; import org.jetbrains.kotlin.backend.common.output.SimpleOutputFileCollection; import org.jetbrains.kotlin.checkers.CheckerTestUtil; import org.jetbrains.kotlin.checkers.CompilerTestLanguageVersionSettings; -import org.jetbrains.kotlin.checkers.CompilerTestLanguageVersionSettingsKt; import org.jetbrains.kotlin.cli.common.CLIConfigurationKeys; import org.jetbrains.kotlin.cli.common.output.outputUtils.OutputUtilsKt; import org.jetbrains.kotlin.cli.jvm.compiler.EnvironmentConfigFiles; @@ -201,7 +200,6 @@ public abstract class CodegenTestCase extends KtUsefulTestCase { Collections.emptyMap(), ApiVersion.createByLanguageVersion(explicitLanguageVersion), explicitLanguageVersion, - CompilerTestLanguageVersionSettingsKt.specificFeaturesForTests(), Collections.emptyMap() ); CommonConfigurationKeysKt.setLanguageVersionSettings(