[minor} Refactor scripting host tests:
- move definitions into one place - reduce script/repl compilation classpath - spedd-ups tests (~10%)
This commit is contained in:
+3
-5
@@ -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<SimpleScript> {
|
||||
jvm {
|
||||
dependenciesFromCurrentContext(wholeClasspath = true)
|
||||
}
|
||||
updateClasspath(classpathFromClass<SimpleScript>())
|
||||
defaultImports(MyTestAnnotation1::class, MyTestAnnotation2::class)
|
||||
refineConfiguration {
|
||||
beforeParsing { (_, config, _) ->
|
||||
|
||||
+1
-12
@@ -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<SimpleScript> {
|
||||
jvm {
|
||||
dependenciesFromCurrentContext(wholeClasspath = true)
|
||||
}
|
||||
}
|
||||
|
||||
val simpleScriptEvaluationConfiguration = ScriptEvaluationConfiguration()
|
||||
|
||||
class TestReceiver(val prop1: Int = 3)
|
||||
|
||||
+1
-3
@@ -64,9 +64,7 @@ class ScriptingHostTest : TestCase() {
|
||||
basicJvmScriptingHost.eval(
|
||||
"println(\"$greeting\")".toScriptSource("name"),
|
||||
createJvmCompilationConfigurationFromTemplate<SimpleScript>(basicJvmScriptingHost.hostConfiguration) {
|
||||
jvm {
|
||||
dependenciesFromCurrentContext(wholeClasspath = true)
|
||||
}
|
||||
updateClasspath(classpathFromClass<SimpleScript>())
|
||||
},
|
||||
createJvmEvaluationConfigurationFromTemplate<SimpleScript>(basicJvmScriptingHost.hostConfiguration)
|
||||
).throwOnFailure()
|
||||
|
||||
+14
-5
@@ -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<SimpleScript> {
|
||||
updateClasspath(classpathFromClass<SimpleScript>())
|
||||
}
|
||||
|
||||
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<ScriptWithBoth>())
|
||||
|
||||
providedProperties("providedString" to String::class)
|
||||
|
||||
@@ -34,7 +43,7 @@ object ReceiverAndPropertiesConfiguration : ScriptCompilationConfiguration(
|
||||
|
||||
object ProvidedPropertiesConfiguration : ScriptCompilationConfiguration(
|
||||
{
|
||||
jvm { dependenciesFromCurrentContext(wholeClasspath = true) }
|
||||
updateClasspath(classpathFromClass<ScriptWithProvidedProperties>())
|
||||
|
||||
providedProperties("providedString" to String::class)
|
||||
}
|
||||
@@ -42,7 +51,7 @@ object ProvidedPropertiesConfiguration : ScriptCompilationConfiguration(
|
||||
|
||||
object ImplicitReceiverConfiguration : ScriptCompilationConfiguration(
|
||||
{
|
||||
jvm { dependenciesFromCurrentContext(wholeClasspath = true) }
|
||||
updateClasspath(classpathFromClass<ScriptWithImplicitReceiver>())
|
||||
|
||||
implicitReceivers(ImplicitReceiverClass::class)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user