From 2f52df064092cf0b0bf70a808cd7317d30d50172 Mon Sep 17 00:00:00 2001 From: Ilya Chernikov Date: Mon, 4 Feb 2019 19:37:16 +0100 Subject: [PATCH] Initialize scripting plugin in other tests --- .../kotlin/codegen/CustomScriptCodegenTest.kt | 4 ++++ .../CollectScriptCompilationDependenciesTest.kt | 3 +++ .../kotlin/scripts/ScriptCliCompilationTest.kt | 2 ++ .../org/jetbrains/kotlin/scripts/ScriptTemplateTest.kt | 10 ++++++---- .../tests/org/jetbrains/kotlin/scripts/ScriptTest.kt | 3 +++ libraries/tools/kotlin-script-util/build.gradle.kts | 1 + .../org/jetbrains/kotlin/script/util/ScriptUtilIT.kt | 4 ++++ .../kotlin/sourceSections/SourceSectionsTest.kt | 3 +++ 8 files changed, 26 insertions(+), 4 deletions(-) diff --git a/compiler/tests/org/jetbrains/kotlin/codegen/CustomScriptCodegenTest.kt b/compiler/tests/org/jetbrains/kotlin/codegen/CustomScriptCodegenTest.kt index 92708068f02..3250cf28cdb 100644 --- a/compiler/tests/org/jetbrains/kotlin/codegen/CustomScriptCodegenTest.kt +++ b/compiler/tests/org/jetbrains/kotlin/codegen/CustomScriptCodegenTest.kt @@ -8,6 +8,7 @@ package org.jetbrains.kotlin.codegen import org.jetbrains.kotlin.cli.common.messages.MessageCollector import org.jetbrains.kotlin.cli.jvm.compiler.EnvironmentConfigFiles import org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment +import org.jetbrains.kotlin.script.loadScriptingPlugin import org.jetbrains.kotlin.script.util.scriptCompilationClasspathFromContextOrStlib import org.jetbrains.kotlin.scripting.compiler.plugin.configureScriptDefinitions import org.jetbrains.kotlin.test.ConfigurationKind @@ -60,12 +61,15 @@ class CustomScriptCodegenTest : CodegenTestCase() { emptyList(), emptyList() ) + if (scriptDefinitions.isNotEmpty()) { configureScriptDefinitions( scriptDefinitions.asList(), configuration, this::class.java.classLoader, MessageCollector.NONE, emptyMap() ) } + loadScriptingPlugin(configuration) + myEnvironment = KotlinCoreEnvironment.createForTests( testRootDisposable, configuration, EnvironmentConfigFiles.JVM_CONFIG_FILES ) diff --git a/compiler/tests/org/jetbrains/kotlin/scripts/CollectScriptCompilationDependenciesTest.kt b/compiler/tests/org/jetbrains/kotlin/scripts/CollectScriptCompilationDependenciesTest.kt index 59bbd1349de..7055f7b8218 100644 --- a/compiler/tests/org/jetbrains/kotlin/scripts/CollectScriptCompilationDependenciesTest.kt +++ b/compiler/tests/org/jetbrains/kotlin/scripts/CollectScriptCompilationDependenciesTest.kt @@ -12,6 +12,7 @@ import org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment import org.jetbrains.kotlin.cli.jvm.config.jvmClasspathRoots import org.jetbrains.kotlin.config.JVMConfigurationKeys import org.jetbrains.kotlin.script.KotlinScriptDefinition +import org.jetbrains.kotlin.script.loadScriptingPlugin import org.jetbrains.kotlin.scripting.compiler.plugin.KotlinScriptDefinitionAdapterFromNewAPI import org.jetbrains.kotlin.test.ConfigurationKind import org.jetbrains.kotlin.test.KotlinTestUtils @@ -68,6 +69,8 @@ class CollectScriptCompilationDependenciesTest : KtUsefulTestCase() { add(JVMConfigurationKeys.SCRIPT_DEFINITIONS, scriptDefinition) addKotlinSourceRoot(File(testDataPath, scriptFile).path) + + loadScriptingPlugin(this) } val environment = KotlinCoreEnvironment.createForTests(testRootDisposable, configuration, EnvironmentConfigFiles.JVM_CONFIG_FILES) diff --git a/compiler/tests/org/jetbrains/kotlin/scripts/ScriptCliCompilationTest.kt b/compiler/tests/org/jetbrains/kotlin/scripts/ScriptCliCompilationTest.kt index e29303ca021..31f32adde2a 100644 --- a/compiler/tests/org/jetbrains/kotlin/scripts/ScriptCliCompilationTest.kt +++ b/compiler/tests/org/jetbrains/kotlin/scripts/ScriptCliCompilationTest.kt @@ -15,6 +15,7 @@ import org.jetbrains.kotlin.cli.jvm.compiler.KotlinToJVMBytecodeCompiler import org.jetbrains.kotlin.config.JVMConfigurationKeys import org.jetbrains.kotlin.daemon.TestMessageCollector import org.jetbrains.kotlin.script.KotlinScriptDefinition +import org.jetbrains.kotlin.script.loadScriptingPlugin import org.jetbrains.kotlin.scripting.compiler.plugin.KotlinScriptDefinitionAdapterFromNewAPI import org.jetbrains.kotlin.test.ConfigurationKind import org.jetbrains.kotlin.test.KotlinTestUtils @@ -83,6 +84,7 @@ class ScriptCliCompilationTest : KtUsefulTestCase() { ) add(JVMConfigurationKeys.SCRIPT_DEFINITIONS, scriptDefinition) } + loadScriptingPlugin(this) } val environment = KotlinCoreEnvironment.createForTests(testRootDisposable, configuration, EnvironmentConfigFiles.JVM_CONFIG_FILES) diff --git a/compiler/tests/org/jetbrains/kotlin/scripts/ScriptTemplateTest.kt b/compiler/tests/org/jetbrains/kotlin/scripts/ScriptTemplateTest.kt index 3de647ddc17..d3f2408454a 100644 --- a/compiler/tests/org/jetbrains/kotlin/scripts/ScriptTemplateTest.kt +++ b/compiler/tests/org/jetbrains/kotlin/scripts/ScriptTemplateTest.kt @@ -27,10 +27,7 @@ import org.jetbrains.kotlin.config.JVMConfigurationKeys import org.jetbrains.kotlin.daemon.TestMessageCollector import org.jetbrains.kotlin.daemon.assertHasMessage import org.jetbrains.kotlin.daemon.toFile -import org.jetbrains.kotlin.script.InvalidScriptResolverAnnotation -import org.jetbrains.kotlin.script.KotlinScriptDefinition -import org.jetbrains.kotlin.script.KotlinScriptDefinitionFromAnnotatedTemplate -import org.jetbrains.kotlin.script.tryConstructClassFromStringArgs +import org.jetbrains.kotlin.script.* import org.jetbrains.kotlin.test.ConfigurationKind import org.jetbrains.kotlin.test.KotlinTestUtils import org.jetbrains.kotlin.test.TestJdkKind @@ -46,6 +43,9 @@ import java.net.URLClassLoader import java.util.concurrent.Future import kotlin.reflect.KClass import kotlin.script.dependencies.* +import kotlin.script.dependencies.KotlinScriptExternalDependencies +import kotlin.script.dependencies.ScriptContents +import kotlin.script.dependencies.ScriptDependenciesResolver import kotlin.script.experimental.dependencies.* import kotlin.script.experimental.dependencies.DependenciesResolver.ResolveResult import kotlin.script.templates.AcceptedAnnotations @@ -349,6 +349,8 @@ class ScriptTemplateTest : KtUsefulTestCase() { configuration.put(JVMConfigurationKeys.DISABLE_STANDARD_SCRIPT_DEFINITION, true) configuration.put(JVMConfigurationKeys.RETAIN_OUTPUT_IN_MEMORY, true) + loadScriptingPlugin(configuration) + val environment = KotlinCoreEnvironment.createForTests(rootDisposable, configuration, EnvironmentConfigFiles.JVM_CONFIG_FILES) try { diff --git a/compiler/tests/org/jetbrains/kotlin/scripts/ScriptTest.kt b/compiler/tests/org/jetbrains/kotlin/scripts/ScriptTest.kt index 5207562096b..2e0f4e2d65b 100644 --- a/compiler/tests/org/jetbrains/kotlin/scripts/ScriptTest.kt +++ b/compiler/tests/org/jetbrains/kotlin/scripts/ScriptTest.kt @@ -27,6 +27,7 @@ import org.jetbrains.kotlin.codegen.CompilationException import org.jetbrains.kotlin.config.JVMConfigurationKeys import org.jetbrains.kotlin.script.KotlinScriptDefinition import org.jetbrains.kotlin.script.StandardScriptDefinition +import org.jetbrains.kotlin.script.loadScriptingPlugin import org.jetbrains.kotlin.script.tryConstructClassFromStringArgs import org.jetbrains.kotlin.test.ConfigurationKind import org.jetbrains.kotlin.test.KotlinTestUtils @@ -106,6 +107,8 @@ class ScriptTest : KtUsefulTestCase() { configuration.put(JVMConfigurationKeys.OUTPUT_DIRECTORY, saveClassesDir) } + loadScriptingPlugin(configuration) + val environment = KotlinCoreEnvironment.createForTests(rootDisposable, configuration, EnvironmentConfigFiles.JVM_CONFIG_FILES) try { diff --git a/libraries/tools/kotlin-script-util/build.gradle.kts b/libraries/tools/kotlin-script-util/build.gradle.kts index f3b98f51d85..f3445c54f2e 100644 --- a/libraries/tools/kotlin-script-util/build.gradle.kts +++ b/libraries/tools/kotlin-script-util/build.gradle.kts @@ -25,6 +25,7 @@ dependencies { testCompile(project(":kotlin-test:kotlin-test-junit")) testRuntime(project(":kotlin-reflect")) testCompile(commonDep("junit:junit")) + testCompile(project(":kotlin-scripting-compiler")) testRuntimeOnly(projectRuntimeJar(":kotlin-compiler")) testRuntime("com.jcabi:jcabi-aether:1.0-SNAPSHOT") testRuntime("org.sonatype.aether:aether-api:1.13.1") diff --git a/libraries/tools/kotlin-script-util/src/test/kotlin/org/jetbrains/kotlin/script/util/ScriptUtilIT.kt b/libraries/tools/kotlin-script-util/src/test/kotlin/org/jetbrains/kotlin/script/util/ScriptUtilIT.kt index 0126d6839e0..652a2c5d5cc 100644 --- a/libraries/tools/kotlin-script-util/src/test/kotlin/org/jetbrains/kotlin/script/util/ScriptUtilIT.kt +++ b/libraries/tools/kotlin-script-util/src/test/kotlin/org/jetbrains/kotlin/script/util/ScriptUtilIT.kt @@ -26,6 +26,7 @@ import org.jetbrains.kotlin.cli.jvm.compiler.KotlinToJVMBytecodeCompiler import org.jetbrains.kotlin.cli.jvm.config.addJvmClasspathRoot import org.jetbrains.kotlin.cli.jvm.config.addJvmClasspathRoots import org.jetbrains.kotlin.codegen.CompilationException +import org.jetbrains.kotlin.compiler.plugin.ComponentRegistrar import org.jetbrains.kotlin.config.CommonConfigurationKeys import org.jetbrains.kotlin.config.CompilerConfiguration import org.jetbrains.kotlin.config.JVMConfigurationKeys @@ -34,6 +35,7 @@ import org.jetbrains.kotlin.script.KotlinScriptDefinitionFromAnnotatedTemplate import org.jetbrains.kotlin.script.util.templates.BindingsScriptTemplateWithLocalResolving import org.jetbrains.kotlin.script.util.templates.StandardArgsScriptTemplateWithLocalResolving import org.jetbrains.kotlin.script.util.templates.StandardArgsScriptTemplateWithMavenResolving +import org.jetbrains.kotlin.scripting.compiler.plugin.ScriptingCompilerConfigurationComponentRegistrar import org.jetbrains.kotlin.utils.PathUtil.getResourcePathForClass import org.junit.Assert import org.junit.Test @@ -140,6 +142,8 @@ done put(CommonConfigurationKeys.MODULE_NAME, "kotlin-script-util-test") add(JVMConfigurationKeys.SCRIPT_DEFINITIONS, scriptDefinition) put(JVMConfigurationKeys.RETAIN_OUTPUT_IN_MEMORY, true) + + add(ComponentRegistrar.PLUGIN_COMPONENT_REGISTRARS, ScriptingCompilerConfigurationComponentRegistrar()) } val environment = KotlinCoreEnvironment.createForTests(rootDisposable, configuration, EnvironmentConfigFiles.JVM_CONFIG_FILES) diff --git a/plugins/source-sections/source-sections-compiler/tests/org/jetbrains/kotlin/sourceSections/SourceSectionsTest.kt b/plugins/source-sections/source-sections-compiler/tests/org/jetbrains/kotlin/sourceSections/SourceSectionsTest.kt index 43858873103..87aaf5ca3d1 100644 --- a/plugins/source-sections/source-sections-compiler/tests/org/jetbrains/kotlin/sourceSections/SourceSectionsTest.kt +++ b/plugins/source-sections/source-sections-compiler/tests/org/jetbrains/kotlin/sourceSections/SourceSectionsTest.kt @@ -32,6 +32,7 @@ import org.jetbrains.kotlin.daemon.client.DaemonReportingTargets import org.jetbrains.kotlin.daemon.client.KotlinCompilerClient import org.jetbrains.kotlin.daemon.common.* import org.jetbrains.kotlin.script.StandardScriptDefinition +import org.jetbrains.kotlin.script.loadScriptingPlugin import org.jetbrains.kotlin.script.tryConstructClassFromStringArgs import org.jetbrains.kotlin.test.ConfigurationKind import org.jetbrains.kotlin.test.KotlinTestUtils @@ -77,6 +78,8 @@ class SourceSectionsTest : TestCaseWithTmpdir() { configuration.add(ComponentRegistrar.PLUGIN_COMPONENT_REGISTRARS, SourceSectionsComponentRegistrar()) } + loadScriptingPlugin(configuration) + val environment = KotlinCoreEnvironment.createForTests(testRootDisposable, configuration, EnvironmentConfigFiles.JVM_CONFIG_FILES) return environment }