Fix various tests

This commit is contained in:
Ilya Chernikov
2017-09-04 11:03:55 +03:00
parent 98413f200f
commit 95035b3d72
15 changed files with 92 additions and 21 deletions
+1
View File
@@ -30,6 +30,7 @@ val testDistProjects = listOf(
":kotlin-test:kotlin-test-junit",
":kotlin-test:kotlin-test-js",
":kotlin-daemon-client",
":kotlin-preloader",
":android-extensions-compiler",
":kotlin-ant")
+2
View File
@@ -7,6 +7,8 @@ dependencies {
compile(project(":core:util.runtime"))
compile(commonDep("javax.inject"))
compile(ideaSdkCoreDeps("intellij-core"))
compileOnly(project(":kotlin-stdlib"))
testCompile(project(":kotlin-stdlib"))
testCompile(projectDist(":kotlin-test:kotlin-test-jvm"))
testCompile(projectDist(":kotlin-test:kotlin-test-junit"))
testCompile(commonDep("junit:junit"))
@@ -884,11 +884,15 @@ open class TestKotlinScriptDummyDependenciesResolver : DependenciesResolver {
@ScriptTemplateDefinition(resolver = TestKotlinScriptDummyDependenciesResolver::class)
abstract class ScriptWithNoParam
internal fun classpathFromClassloader(): List<File> =
(TestKotlinScriptDummyDependenciesResolver::class.java.classLoader as? URLClassLoader)?.urLs
?.mapNotNull(URL::toFile)
?.filter { it.path.contains("out") && it.path.contains("test") }
?: emptyList()
internal fun classpathFromClassloader(): List<File> {
val additionalClasspath = System.getProperty("kotlin.test.script.classpath")?.split(File.pathSeparator)
?.map{ File(it) }.orEmpty()
return ((TestKotlinScriptDummyDependenciesResolver::class.java.classLoader as? URLClassLoader)?.urLs
?.mapNotNull(URL::toFile)
?.filter { it.path.contains("out") && it.path.contains("test") }
?: emptyList()
) + additionalClasspath
}
internal fun URL.toFile() =
try {
@@ -97,7 +97,7 @@ class ScriptTemplateTest {
Assert.assertNull(compileScript("fib_ext_ann.kts", ScriptWithIntParamAndDummyResolver::class, null, includeKotlinRuntime = false))
val messageCollector = TestMessageCollector()
val aClass = compileScript("fib_ext_ann.kts", ScriptWithIntParam::class, null, includeKotlinRuntime = false, messageCollector = messageCollector)
val aClass = compileScript("fib_ext_ann.kts", ScriptWithIntParam::class, null, messageCollector = messageCollector)
Assert.assertNotNull("Compilation failed:\n$messageCollector", aClass)
val out = captureOut {
aClass!!.getConstructor(Integer.TYPE).newInstance(4)
@@ -117,7 +117,7 @@ class ScriptTemplateTest {
}
val messageCollector = TestMessageCollector()
val aClass = compileScript("fib_ext_ann2.kts", ScriptWithIntParam::class, null, includeKotlinRuntime = false, messageCollector = messageCollector)
val aClass = compileScript("fib_ext_ann2.kts", ScriptWithIntParam::class, null, messageCollector = messageCollector)
Assert.assertNotNull("Compilation failed:\n$messageCollector", aClass)
val out = captureOut {
aClass!!.getConstructor(Integer.TYPE).newInstance(4)