From c53a8056965b1016d20ec33b71529e0b86ea572b Mon Sep 17 00:00:00 2001 From: Ilya Chernikov Date: Mon, 23 Sep 2019 13:00:33 +0200 Subject: [PATCH] [minor} Refactor scripting host tests: - move definitions into one place - reduce script/repl compilation classpath - spedd-ups tests (~10%) --- .../jvmhost/test/ConfigurationDslTest.kt | 8 +++----- .../experimental/jvmhost/test/ReplTest.kt | 13 +------------ .../jvmhost/test/ScriptingHostTest.kt | 4 +--- .../jvmhost/test/TestScriptDefinitions.kt | 19 ++++++++++++++----- 4 files changed, 19 insertions(+), 25 deletions(-) diff --git a/libraries/scripting/jvm-host-test/test/kotlin/script/experimental/jvmhost/test/ConfigurationDslTest.kt b/libraries/scripting/jvm-host-test/test/kotlin/script/experimental/jvmhost/test/ConfigurationDslTest.kt index b8672c322ac..25036562b61 100644 --- a/libraries/scripting/jvm-host-test/test/kotlin/script/experimental/jvmhost/test/ConfigurationDslTest.kt +++ b/libraries/scripting/jvm-host-test/test/kotlin/script/experimental/jvmhost/test/ConfigurationDslTest.kt @@ -13,8 +13,8 @@ import kotlin.script.experimental.api.* import kotlin.script.experimental.host.toScriptSource import kotlin.script.experimental.jvm.BasicJvmScriptEvaluator import kotlin.script.experimental.jvm.defaultJvmScriptingHostConfiguration -import kotlin.script.experimental.jvm.dependenciesFromCurrentContext -import kotlin.script.experimental.jvm.jvm +import kotlin.script.experimental.jvm.updateClasspath +import kotlin.script.experimental.jvm.util.classpathFromClass import kotlin.script.experimental.jvmhost.JvmScriptCompiler import kotlin.script.experimental.jvmhost.createJvmCompilationConfigurationFromTemplate import kotlin.script.experimental.jvmhost.createJvmEvaluationConfigurationFromTemplate @@ -24,9 +24,7 @@ class ConfigurationDslTest : TestCase() { @Test fun testComposableRefinementHandlers() { val baseConfig = createJvmCompilationConfigurationFromTemplate { - jvm { - dependenciesFromCurrentContext(wholeClasspath = true) - } + updateClasspath(classpathFromClass()) defaultImports(MyTestAnnotation1::class, MyTestAnnotation2::class) refineConfiguration { beforeParsing { (_, config, _) -> diff --git a/libraries/scripting/jvm-host-test/test/kotlin/script/experimental/jvmhost/test/ReplTest.kt b/libraries/scripting/jvm-host-test/test/kotlin/script/experimental/jvmhost/test/ReplTest.kt index 9a8d8fc3ede..e43e806bd2f 100644 --- a/libraries/scripting/jvm-host-test/test/kotlin/script/experimental/jvmhost/test/ReplTest.kt +++ b/libraries/scripting/jvm-host-test/test/kotlin/script/experimental/jvmhost/test/ReplTest.kt @@ -15,7 +15,7 @@ import org.junit.Test import kotlin.script.experimental.annotations.KotlinScript import kotlin.script.experimental.api.* import kotlin.script.experimental.host.toScriptSource -import kotlin.script.experimental.jvm.* +import kotlin.script.experimental.jvm.*import kotlin.script.experimental.jvm.util.classpathFromClass import kotlin.script.experimental.jvmhost.createJvmCompilationConfigurationFromTemplate class ReplTest : TestCase() { @@ -168,15 +168,4 @@ class ReplTest : TestCase() { } } -@KotlinScript(fileExtension = "simplescript.kts") -abstract class SimpleScript - -val simpleScriptompilationConfiguration = createJvmCompilationConfigurationFromTemplate { - jvm { - dependenciesFromCurrentContext(wholeClasspath = true) - } -} - -val simpleScriptEvaluationConfiguration = ScriptEvaluationConfiguration() - class TestReceiver(val prop1: Int = 3) diff --git a/libraries/scripting/jvm-host-test/test/kotlin/script/experimental/jvmhost/test/ScriptingHostTest.kt b/libraries/scripting/jvm-host-test/test/kotlin/script/experimental/jvmhost/test/ScriptingHostTest.kt index 4a5844c62fc..f2e7932cdd9 100644 --- a/libraries/scripting/jvm-host-test/test/kotlin/script/experimental/jvmhost/test/ScriptingHostTest.kt +++ b/libraries/scripting/jvm-host-test/test/kotlin/script/experimental/jvmhost/test/ScriptingHostTest.kt @@ -64,9 +64,7 @@ class ScriptingHostTest : TestCase() { basicJvmScriptingHost.eval( "println(\"$greeting\")".toScriptSource("name"), createJvmCompilationConfigurationFromTemplate(basicJvmScriptingHost.hostConfiguration) { - jvm { - dependenciesFromCurrentContext(wholeClasspath = true) - } + updateClasspath(classpathFromClass()) }, createJvmEvaluationConfigurationFromTemplate(basicJvmScriptingHost.hostConfiguration) ).throwOnFailure() diff --git a/libraries/scripting/jvm-host-test/test/kotlin/script/experimental/jvmhost/test/TestScriptDefinitions.kt b/libraries/scripting/jvm-host-test/test/kotlin/script/experimental/jvmhost/test/TestScriptDefinitions.kt index 48feca24457..50b4ec61873 100644 --- a/libraries/scripting/jvm-host-test/test/kotlin/script/experimental/jvmhost/test/TestScriptDefinitions.kt +++ b/libraries/scripting/jvm-host-test/test/kotlin/script/experimental/jvmhost/test/TestScriptDefinitions.kt @@ -8,11 +8,20 @@ package kotlin.script.experimental.jvmhost.test import kotlin.script.experimental.annotations.KotlinScript import kotlin.script.experimental.api.* import kotlin.script.experimental.host.toScriptSource -import kotlin.script.experimental.jvm.dependenciesFromCurrentContext -import kotlin.script.experimental.jvm.jvm +import kotlin.script.experimental.jvm.updateClasspath +import kotlin.script.experimental.jvm.util.classpathFromClass import kotlin.script.experimental.jvmhost.BasicJvmScriptingHost import kotlin.script.experimental.jvmhost.createJvmCompilationConfigurationFromTemplate +@KotlinScript(fileExtension = "simplescript.kts") +abstract class SimpleScript + +val simpleScriptompilationConfiguration = createJvmCompilationConfigurationFromTemplate { + updateClasspath(classpathFromClass()) +} + +val simpleScriptEvaluationConfiguration = ScriptEvaluationConfiguration() + @KotlinScript(fileExtension = "withboth.kts", compilationConfiguration = ReceiverAndPropertiesConfiguration::class) abstract class ScriptWithBoth @@ -24,7 +33,7 @@ abstract class ScriptWithImplicitReceiver object ReceiverAndPropertiesConfiguration : ScriptCompilationConfiguration( { - jvm { dependenciesFromCurrentContext(wholeClasspath = true) } + updateClasspath(classpathFromClass()) providedProperties("providedString" to String::class) @@ -34,7 +43,7 @@ object ReceiverAndPropertiesConfiguration : ScriptCompilationConfiguration( object ProvidedPropertiesConfiguration : ScriptCompilationConfiguration( { - jvm { dependenciesFromCurrentContext(wholeClasspath = true) } + updateClasspath(classpathFromClass()) providedProperties("providedString" to String::class) } @@ -42,7 +51,7 @@ object ProvidedPropertiesConfiguration : ScriptCompilationConfiguration( object ImplicitReceiverConfiguration : ScriptCompilationConfiguration( { - jvm { dependenciesFromCurrentContext(wholeClasspath = true) } + updateClasspath(classpathFromClass()) implicitReceivers(ImplicitReceiverClass::class) }