Move scripting jvm host tests to a separate project...
to solve problems with testing with direct dependency on proguarded compiler
This commit is contained in:
@@ -0,0 +1,24 @@
|
|||||||
|
|
||||||
|
plugins {
|
||||||
|
kotlin("jvm")
|
||||||
|
}
|
||||||
|
|
||||||
|
jvmTarget = "1.6"
|
||||||
|
|
||||||
|
dependencies {
|
||||||
|
testCompile(intellijCoreDep())
|
||||||
|
testCompile(intellijDep()) { includeJars("openapi", "idea", "log4j") }
|
||||||
|
testCompile(project(":kotlin-scripting-jvm-host"))
|
||||||
|
testCompile(projectTests(":compiler:tests-common"))
|
||||||
|
testCompile(commonDep("junit"))
|
||||||
|
testCompile(project(":compiler:daemon-common")) // TODO: fix import (workaround for jps build)
|
||||||
|
}
|
||||||
|
|
||||||
|
sourceSets {
|
||||||
|
"main" {}
|
||||||
|
"test" { projectDefault() }
|
||||||
|
}
|
||||||
|
|
||||||
|
projectTest(parallel = true) {
|
||||||
|
workingDir = rootDir
|
||||||
|
}
|
||||||
+1
-1
@@ -21,7 +21,7 @@ import kotlin.script.experimental.jvmhost.impl.KJvmReplCompilerImpl
|
|||||||
class ReplTest : TestCase() {
|
class ReplTest : TestCase() {
|
||||||
|
|
||||||
companion object {
|
companion object {
|
||||||
const val TEST_DATA_DIR = "libraries/scripting/jvm-host/testData"
|
const val TEST_DATA_DIR = "libraries/scripting/jvm-host-test/testData"
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
+1
-1
@@ -30,7 +30,7 @@ import kotlin.script.templates.standard.SimpleScriptTemplate
|
|||||||
class ScriptingHostTest : TestCase() {
|
class ScriptingHostTest : TestCase() {
|
||||||
|
|
||||||
companion object {
|
companion object {
|
||||||
const val TEST_DATA_DIR = "libraries/scripting/jvm-host/testData"
|
const val TEST_DATA_DIR = "libraries/scripting/jvm-host-test/testData"
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@@ -10,29 +10,22 @@ dependencies {
|
|||||||
compile(kotlinStdlib())
|
compile(kotlinStdlib())
|
||||||
compile(project(":kotlin-scripting-common"))
|
compile(project(":kotlin-scripting-common"))
|
||||||
compile(project(":kotlin-scripting-jvm"))
|
compile(project(":kotlin-scripting-jvm"))
|
||||||
compile(project(":kotlin-scripting-compiler"))
|
compileOnly(project(":kotlin-scripting-compiler"))
|
||||||
compile(project(":kotlin-scripting-compiler-impl"))
|
|
||||||
compileOnly(project(":compiler:cli"))
|
compileOnly(project(":compiler:cli"))
|
||||||
compileOnly(project(":kotlin-reflect-api"))
|
compileOnly(project(":kotlin-reflect-api"))
|
||||||
compileOnly(intellijCoreDep())
|
compileOnly(intellijCoreDep())
|
||||||
runtime(projectRuntimeJar(":kotlin-compiler"))
|
runtime(projectRuntimeJar(":kotlin-compiler"))
|
||||||
|
runtime(project(":kotlin-scripting-compiler"))
|
||||||
runtime(project(":kotlin-reflect"))
|
runtime(project(":kotlin-reflect"))
|
||||||
runtime(commonDep("org.jetbrains.intellij.deps", "trove4j"))
|
runtime(commonDep("org.jetbrains.intellij.deps", "trove4j"))
|
||||||
testCompile(projectTests(":compiler:tests-common"))
|
|
||||||
testCompile(commonDep("junit"))
|
|
||||||
testCompile(project(":daemon-common")) // TODO: fix import (workaround for jps build)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
sourceSets {
|
sourceSets {
|
||||||
"main" { projectDefault() }
|
"main" { projectDefault() }
|
||||||
"test" { projectDefault() }
|
"test" {}
|
||||||
}
|
}
|
||||||
|
|
||||||
publish()
|
publish()
|
||||||
|
|
||||||
standardPublicJars()
|
standardPublicJars()
|
||||||
|
|
||||||
|
|
||||||
projectTest(parallel = true) {
|
|
||||||
workingDir = rootDir
|
|
||||||
}
|
|
||||||
|
|||||||
+1
-1
@@ -11,7 +11,7 @@ import java.io.InputStream
|
|||||||
import java.net.URL
|
import java.net.URL
|
||||||
import java.util.*
|
import java.util.*
|
||||||
|
|
||||||
internal class CompiledScriptClassLoader(parent: ClassLoader?, private val entries: Map<String, ByteArray>) : ClassLoader(parent) {
|
class CompiledScriptClassLoader(parent: ClassLoader?, private val entries: Map<String, ByteArray>) : ClassLoader(parent) {
|
||||||
|
|
||||||
override fun findClass(name: String): Class<*>? {
|
override fun findClass(name: String): Class<*>? {
|
||||||
val classPathName = name.replace('.', '/') + ".class"
|
val classPathName = name.replace('.', '/') + ".class"
|
||||||
|
|||||||
@@ -179,6 +179,7 @@ include ":kotlin-build-common",
|
|||||||
":kotlin-scripting-common",
|
":kotlin-scripting-common",
|
||||||
":kotlin-scripting-jvm",
|
":kotlin-scripting-jvm",
|
||||||
":kotlin-scripting-jvm-host",
|
":kotlin-scripting-jvm-host",
|
||||||
|
":kotlin-scripting-jvm-host-test",
|
||||||
":kotlin-scripting-jvm-host-embeddable",
|
":kotlin-scripting-jvm-host-embeddable",
|
||||||
":kotlin-scripting-intellij",
|
":kotlin-scripting-intellij",
|
||||||
":kotlin-scripting-compiler",
|
":kotlin-scripting-compiler",
|
||||||
@@ -358,6 +359,7 @@ project(':kotlin-annotations-android').projectDir = "$rootDir/libraries/tools/ko
|
|||||||
project(':kotlin-scripting-common').projectDir = "$rootDir/libraries/scripting/common" as File
|
project(':kotlin-scripting-common').projectDir = "$rootDir/libraries/scripting/common" as File
|
||||||
project(':kotlin-scripting-jvm').projectDir = "$rootDir/libraries/scripting/jvm" as File
|
project(':kotlin-scripting-jvm').projectDir = "$rootDir/libraries/scripting/jvm" as File
|
||||||
project(':kotlin-scripting-jvm-host').projectDir = "$rootDir/libraries/scripting/jvm-host" as File
|
project(':kotlin-scripting-jvm-host').projectDir = "$rootDir/libraries/scripting/jvm-host" as File
|
||||||
|
project(':kotlin-scripting-jvm-host-test').projectDir = "$rootDir/libraries/scripting/jvm-host-test" as File
|
||||||
project(':kotlin-scripting-jvm-host-embeddable').projectDir = "$rootDir/libraries/scripting/jvm-host-embeddable" as File
|
project(':kotlin-scripting-jvm-host-embeddable').projectDir = "$rootDir/libraries/scripting/jvm-host-embeddable" as File
|
||||||
project(':kotlin-scripting-jsr223').projectDir = "$rootDir/libraries/scripting/jsr223" as File
|
project(':kotlin-scripting-jsr223').projectDir = "$rootDir/libraries/scripting/jsr223" as File
|
||||||
project(':kotlin-scripting-jsr223-embeddable').projectDir = "$rootDir/libraries/scripting/jsr223-embeddable" as File
|
project(':kotlin-scripting-jsr223-embeddable').projectDir = "$rootDir/libraries/scripting/jsr223-embeddable" as File
|
||||||
|
|||||||
Reference in New Issue
Block a user