Fix compiled scripts saving tests:

The tests were broken some time ago by applying script isolation, so
it was necessary to add base libraries into the classpath.
Also refactored some classpath building utilities.
This commit is contained in:
Ilya Chernikov
2019-07-09 15:35:38 +02:00
parent 9c004c3a52
commit c9a4328feb
4 changed files with 43 additions and 14 deletions
@@ -29,6 +29,9 @@ import kotlin.script.experimental.host.toScriptSource
import kotlin.script.experimental.jvm.BasicJvmScriptEvaluator
import kotlin.script.experimental.jvm.defaultJvmScriptingHostConfiguration
import kotlin.script.experimental.jvm.impl.KJvmCompiledScript
import kotlin.script.experimental.jvm.updateClasspath
import kotlin.script.experimental.jvm.util.KotlinJars
import kotlin.script.experimental.jvm.util.classpathFromClass
import kotlin.script.experimental.jvmhost.*
import kotlin.script.templates.standard.SimpleScriptTemplate
@@ -121,7 +124,10 @@ class ScriptingHostTest : TestCase() {
fun testSaveToRunnableJar() {
val greeting = "Hello from script jar!"
val outJar = Files.createTempFile("saveToRunnableJar", ".jar").toFile()
val compilationConfiguration = createJvmCompilationConfigurationFromTemplate<SimpleScriptTemplate>()
val compilationConfiguration = createJvmCompilationConfigurationFromTemplate<SimpleScriptTemplate>() {
updateClasspath(classpathFromClass<SimpleScriptTemplate>())
updateClasspath(KotlinJars.kotlinScriptStandardJarsWithReflect)
}
val compiler = JvmScriptCompiler(defaultJvmScriptingHostConfiguration)
val scriptName = "SavedRunnableScript"
val compiledScript = runBlocking {