[test] Use properties for populating the compiler configuration
diff --git a/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/services/CompilerConfigurationProvider.kt b/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/services/CompilerConfigurationProvider.kt index 1866750..ef87f66 100644 --- a/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/services/CompilerConfigurationProvider.kt +++ b/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/services/CompilerConfigurationProvider.kt
@@ -15,7 +15,7 @@ import org.jetbrains.kotlin.compiler.plugin.TEST_ONLY_PLUGIN_REGISTRATION_CALLBACK import org.jetbrains.kotlin.compiler.plugin.registerInProject import org.jetbrains.kotlin.config.* -import org.jetbrains.kotlin.js.config.JSConfigurationKeys +import org.jetbrains.kotlin.js.config.* import org.jetbrains.kotlin.platform.TargetPlatform import org.jetbrains.kotlin.platform.isCommon import org.jetbrains.kotlin.platform.isJs @@ -27,9 +27,9 @@ import org.jetbrains.kotlin.test.directives.CodegenTestDirectives import org.jetbrains.kotlin.test.directives.JsEnvironmentConfigurationDirectives import org.jetbrains.kotlin.test.directives.isApplicableTo -import org.jetbrains.kotlin.test.utils.MessageCollectorForCompilerTests import org.jetbrains.kotlin.test.model.FrontendKinds import org.jetbrains.kotlin.test.model.TestModule +import org.jetbrains.kotlin.test.utils.MessageCollectorForCompilerTests import java.io.File abstract class CompilerConfigurationProvider(val testServices: TestServices) : TestService { @@ -134,35 +134,26 @@ configuration[CommonConfigurationKeys.MODULE_NAME] = module.name if (JsEnvironmentConfigurationDirectives.GENERATE_STRICT_IMPLICIT_EXPORT in module.directives) { - configuration.put(JSConfigurationKeys.GENERATE_STRICT_IMPLICIT_EXPORT, true) + configuration.generateStrictImplicitExport = true } if (JsEnvironmentConfigurationDirectives.GENERATE_DTS in module.directives) { - configuration.put(JSConfigurationKeys.GENERATE_DTS, true) + configuration.generateDts = true } if (JsEnvironmentConfigurationDirectives.ES6_MODE in module.directives) { - configuration.put(JSConfigurationKeys.USE_ES6_CLASSES, true) - configuration.put(JSConfigurationKeys.COMPILE_SUSPEND_AS_JS_GENERATOR, true) - configuration.put( - JSConfigurationKeys.COMPILE_LAMBDAS_AS_ES6_ARROW_FUNCTIONS, - JsEnvironmentConfigurationDirectives.DISABLE_ES6_ARROWS !in module.directives, - ) + configuration.useEs6Classes = true + configuration.compileSuspendAsJsGenerator = true + configuration.compileLambdasAsEs6ArrowFunctions = JsEnvironmentConfigurationDirectives.DISABLE_ES6_ARROWS !in module.directives } if (testServices.defaultsProvider.frontendKind == FrontendKinds.FIR) { - configuration[CommonConfigurationKeys.USE_FIR] = true + configuration.useFir = true } - configuration.put(CommonConfigurationKeys.VERIFY_IR, IrVerificationMode.ERROR) - configuration.put( - CommonConfigurationKeys.ENABLE_IR_VISIBILITY_CHECKS, - !CodegenTestDirectives.DISABLE_IR_VISIBILITY_CHECKS.isApplicableTo(module, testServices), - ) - configuration.put( - CommonConfigurationKeys.ENABLE_IR_VARARG_TYPES_CHECKS, - !CodegenTestDirectives.DISABLE_IR_VARARG_TYPE_CHECKS.isApplicableTo(module, testServices), - ) + configuration.verifyIr = IrVerificationMode.ERROR + configuration.enableIrVisibilityChecks = !CodegenTestDirectives.DISABLE_IR_VISIBILITY_CHECKS.isApplicableTo(module, testServices) + configuration.enableIrVarargTypesChecks = !CodegenTestDirectives.DISABLE_IR_VARARG_TYPE_CHECKS.isApplicableTo(module, testServices) val messageCollector = MessageCollectorForCompilerTests(System.err, CompilerTestMessageRenderer(module)) configuration.messageCollector = messageCollector
diff --git a/js/js.tests/test/org/jetbrains/kotlin/incremental/AbstractInvalidationTest.kt b/js/js.tests/test/org/jetbrains/kotlin/incremental/AbstractInvalidationTest.kt index 66d0d5a..7d3b59d 100644 --- a/js/js.tests/test/org/jetbrains/kotlin/incremental/AbstractInvalidationTest.kt +++ b/js/js.tests/test/org/jetbrains/kotlin/incremental/AbstractInvalidationTest.kt
@@ -11,6 +11,7 @@ import com.intellij.psi.SingleRootFileViewProvider import com.intellij.testFramework.TestDataFile import org.jetbrains.kotlin.cli.common.config.addKotlinSourceRoot +import org.jetbrains.kotlin.cli.common.disposeRootInWriteAction import org.jetbrains.kotlin.cli.common.localfs.KotlinLocalFileSystem import org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment import org.jetbrains.kotlin.codegen.* @@ -19,7 +20,7 @@ import org.jetbrains.kotlin.ir.backend.js.ic.KotlinLibraryFile import org.jetbrains.kotlin.ir.backend.js.ic.KotlinSourceFileMap import org.jetbrains.kotlin.ir.backend.js.transformers.irToJs.safeModuleName -import org.jetbrains.kotlin.js.config.JSConfigurationKeys +import org.jetbrains.kotlin.js.config.* import org.jetbrains.kotlin.js.test.utils.MODULE_EMULATION_FILE import org.jetbrains.kotlin.js.test.utils.wrapWithModuleEmulationMarkers import org.jetbrains.kotlin.konan.file.ZipFileSystemCacheableAccessor @@ -29,10 +30,6 @@ import org.jetbrains.kotlin.test.TargetBackend import org.jetbrains.kotlin.test.builders.LanguageVersionSettingsBuilder import org.jetbrains.kotlin.test.util.JUnit4Assertions -import org.jetbrains.kotlin.cli.common.disposeRootInWriteAction -import org.jetbrains.kotlin.js.config.friendLibraries -import org.jetbrains.kotlin.js.config.includes -import org.jetbrains.kotlin.js.config.libraries import org.jetbrains.kotlin.test.utils.TestDisposable import org.jetbrains.kotlin.utils.addToStdlib.ifNotEmpty import org.junit.jupiter.api.AfterEach @@ -147,13 +144,13 @@ includedLibrary: String? = null, ): CompilerConfiguration { val copy = environment.configuration.copy() - copy.put(CommonConfigurationKeys.MODULE_NAME, moduleName) - copy.put(JSConfigurationKeys.MODULE_KIND, moduleKind) - copy.put(JSConfigurationKeys.PROPERTY_LAZY_INITIALIZATION, true) - copy.put(JSConfigurationKeys.SOURCE_MAP, true) - copy.put(JSConfigurationKeys.USE_ES6_CLASSES, targetBackend == TargetBackend.JS_IR_ES6) - copy.put(JSConfigurationKeys.COMPILE_SUSPEND_AS_JS_GENERATOR, targetBackend == TargetBackend.JS_IR_ES6) - copy.put(JSConfigurationKeys.COMPILE_LAMBDAS_AS_ES6_ARROW_FUNCTIONS, targetBackend == TargetBackend.JS_IR_ES6) + copy.moduleName = moduleName + copy.moduleKind = moduleKind + copy.propertyLazyInitialization = true + copy.sourceMap = true + copy.useEs6Classes = targetBackend == TargetBackend.JS_IR_ES6 + copy.compileSuspendAsJsGenerator = targetBackend == TargetBackend.JS_IR_ES6 + copy.compileLambdasAsEs6ArrowFunctions = targetBackend == TargetBackend.JS_IR_ES6 copy.languageVersionSettings = with(LanguageVersionSettingsBuilder()) { languageFeatures.forEach {