Fix tests in the new build infrastructure
This commit is contained in:
@@ -61,8 +61,9 @@ import kotlin.script.templates.standard.ScriptTemplateWithArgs
|
||||
class ScriptTemplateTest {
|
||||
@Test
|
||||
fun testScriptWithParam() {
|
||||
val aClass = compileScript("fib.kts", ScriptWithIntParam::class, null)
|
||||
Assert.assertNotNull(aClass)
|
||||
val messageCollector = TestMessageCollector()
|
||||
val aClass = compileScript("fib.kts", ScriptWithIntParam::class, null, messageCollector = messageCollector)
|
||||
Assert.assertNotNull("Compilation failed:\n$messageCollector", aClass)
|
||||
val out = captureOut {
|
||||
aClass!!.getConstructor(Integer.TYPE).newInstance(4)
|
||||
}
|
||||
@@ -71,8 +72,9 @@ class ScriptTemplateTest {
|
||||
|
||||
@Test
|
||||
fun testScriptWithClassParameter() {
|
||||
val aClass = compileScript("fib_cp.kts", ScriptWithClassParam::class, null, runIsolated = false)
|
||||
Assert.assertNotNull(aClass)
|
||||
val messageCollector = TestMessageCollector()
|
||||
val aClass = compileScript("fib_cp.kts", ScriptWithClassParam::class, null, runIsolated = false, messageCollector = messageCollector)
|
||||
Assert.assertNotNull("Compilation failed:\n$messageCollector", aClass)
|
||||
val out = captureOut {
|
||||
aClass!!.getConstructor(TestParamClass::class.java).newInstance(TestParamClass(4))
|
||||
}
|
||||
@@ -81,8 +83,9 @@ class ScriptTemplateTest {
|
||||
|
||||
@Test
|
||||
fun testScriptWithBaseClassWithParam() {
|
||||
val aClass = compileScript("fib_dsl.kts", ScriptWithBaseClass::class, null, runIsolated = false)
|
||||
Assert.assertNotNull(aClass)
|
||||
val messageCollector = TestMessageCollector()
|
||||
val aClass = compileScript("fib_dsl.kts", ScriptWithBaseClass::class, null, runIsolated = false, messageCollector = messageCollector)
|
||||
Assert.assertNotNull("Compilation failed:\n$messageCollector", aClass)
|
||||
val out = captureOut {
|
||||
aClass!!.getConstructor(Integer.TYPE, Integer.TYPE).newInstance(4, 1)
|
||||
}
|
||||
@@ -93,8 +96,9 @@ class ScriptTemplateTest {
|
||||
fun testScriptWithDependsAnn() {
|
||||
Assert.assertNull(compileScript("fib_ext_ann.kts", ScriptWithIntParamAndDummyResolver::class, null, includeKotlinRuntime = false))
|
||||
|
||||
val aClass = compileScript("fib_ext_ann.kts", ScriptWithIntParam::class, null, includeKotlinRuntime = false)
|
||||
Assert.assertNotNull(aClass)
|
||||
val messageCollector = TestMessageCollector()
|
||||
val aClass = compileScript("fib_ext_ann.kts", ScriptWithIntParam::class, null, includeKotlinRuntime = false, messageCollector = messageCollector)
|
||||
Assert.assertNotNull("Compilation failed:\n$messageCollector", aClass)
|
||||
val out = captureOut {
|
||||
aClass!!.getConstructor(Integer.TYPE).newInstance(4)
|
||||
}
|
||||
@@ -112,8 +116,9 @@ class ScriptTemplateTest {
|
||||
System.setErr(savedErr)
|
||||
}
|
||||
|
||||
val aClass = compileScript("fib_ext_ann2.kts", ScriptWithIntParam::class, null, includeKotlinRuntime = false)
|
||||
Assert.assertNotNull(aClass)
|
||||
val messageCollector = TestMessageCollector()
|
||||
val aClass = compileScript("fib_ext_ann2.kts", ScriptWithIntParam::class, null, includeKotlinRuntime = false, messageCollector = messageCollector)
|
||||
Assert.assertNotNull("Compilation failed:\n$messageCollector", aClass)
|
||||
val out = captureOut {
|
||||
aClass!!.getConstructor(Integer.TYPE).newInstance(4)
|
||||
}
|
||||
@@ -122,8 +127,9 @@ class ScriptTemplateTest {
|
||||
|
||||
@Test
|
||||
fun testScriptWithoutParams() {
|
||||
val aClass = compileScript("without_params.kts", ScriptWithoutParams::class, null)
|
||||
Assert.assertNotNull(aClass)
|
||||
val messageCollector = TestMessageCollector()
|
||||
val aClass = compileScript("without_params.kts", ScriptWithoutParams::class, null, messageCollector = messageCollector)
|
||||
Assert.assertNotNull("Compilation failed:\n$messageCollector", aClass)
|
||||
val out = captureOut {
|
||||
aClass!!.getConstructor(Integer.TYPE).newInstance(4)
|
||||
}
|
||||
@@ -132,8 +138,9 @@ class ScriptTemplateTest {
|
||||
|
||||
@Test
|
||||
fun testScriptWithOverriddenParam() {
|
||||
val aClass = compileScript("overridden_parameter.kts", ScriptBaseClassWithOverriddenProperty::class, null)
|
||||
Assert.assertNotNull(aClass)
|
||||
val messageCollector = TestMessageCollector()
|
||||
val aClass = compileScript("overridden_parameter.kts", ScriptBaseClassWithOverriddenProperty::class, null, messageCollector = messageCollector)
|
||||
Assert.assertNotNull("Compilation failed:\n$messageCollector", aClass)
|
||||
val out = captureOut {
|
||||
aClass!!.getConstructor(Integer.TYPE).newInstance(4)
|
||||
}
|
||||
@@ -142,8 +149,9 @@ class ScriptTemplateTest {
|
||||
|
||||
@Test
|
||||
fun testScriptWithArrayParam() {
|
||||
val aClass = compileScript("array_parameter.kts", ScriptWithArrayParam::class, null)
|
||||
Assert.assertNotNull(aClass)
|
||||
val messageCollector = TestMessageCollector()
|
||||
val aClass = compileScript("array_parameter.kts", ScriptWithArrayParam::class, null, messageCollector = messageCollector)
|
||||
Assert.assertNotNull("Compilation failed:\n$messageCollector", aClass)
|
||||
captureOut {
|
||||
aClass!!.getConstructor(Array<String>::class.java).newInstance(arrayOf("one", "two"))
|
||||
}.let {
|
||||
@@ -153,8 +161,9 @@ class ScriptTemplateTest {
|
||||
|
||||
@Test
|
||||
fun testScriptWithNullableParam() {
|
||||
val aClass = compileScript("nullable_parameter.kts", ScriptWithNullableParam::class, null)
|
||||
Assert.assertNotNull(aClass)
|
||||
val messageCollector = TestMessageCollector()
|
||||
val aClass = compileScript("nullable_parameter.kts", ScriptWithNullableParam::class, null, messageCollector = messageCollector)
|
||||
Assert.assertNotNull("Compilation failed:\n$messageCollector", aClass)
|
||||
captureOut {
|
||||
aClass!!.getConstructor(Int::class.javaObjectType).newInstance(null)
|
||||
}.let {
|
||||
@@ -164,8 +173,9 @@ class ScriptTemplateTest {
|
||||
|
||||
@Test
|
||||
fun testScriptVarianceParams() {
|
||||
val aClass = compileScript("variance_parameters.kts", ScriptVarianceParams::class, null)
|
||||
Assert.assertNotNull(aClass)
|
||||
val messageCollector = TestMessageCollector()
|
||||
val aClass = compileScript("variance_parameters.kts", ScriptVarianceParams::class, null, messageCollector = messageCollector)
|
||||
Assert.assertNotNull("Compilation failed:\n$messageCollector", aClass)
|
||||
captureOut {
|
||||
aClass!!.getConstructor(Array<in Number>::class.java, Array<out Number>::class.java).newInstance(arrayOf("one"), arrayOf(1, 2))
|
||||
}.let {
|
||||
@@ -175,8 +185,9 @@ class ScriptTemplateTest {
|
||||
|
||||
@Test
|
||||
fun testScriptWithNullableProjection() {
|
||||
val aClass = compileScript("nullable_projection.kts", ScriptWithNullableProjection::class, null)
|
||||
Assert.assertNotNull(aClass)
|
||||
val messageCollector = TestMessageCollector()
|
||||
val aClass = compileScript("nullable_projection.kts", ScriptWithNullableProjection::class, null, messageCollector = messageCollector)
|
||||
Assert.assertNotNull("Compilation failed:\n$messageCollector", aClass)
|
||||
captureOut {
|
||||
aClass!!.getConstructor(Array<String>::class.java).newInstance(arrayOf<String?>(null))
|
||||
}.let {
|
||||
@@ -186,8 +197,9 @@ class ScriptTemplateTest {
|
||||
|
||||
@Test
|
||||
fun testScriptWithArray2DParam() {
|
||||
val aClass = compileScript("array2d_param.kts", ScriptWithArray2DParam::class, null)
|
||||
Assert.assertNotNull(aClass)
|
||||
val messageCollector = TestMessageCollector()
|
||||
val aClass = compileScript("array2d_param.kts", ScriptWithArray2DParam::class, null, messageCollector = messageCollector)
|
||||
Assert.assertNotNull("Compilation failed:\n$messageCollector", aClass)
|
||||
captureOut {
|
||||
aClass!!.getConstructor(Array<Array<in String>>::class.java).newInstance(arrayOf(arrayOf("one"), arrayOf("two")))
|
||||
}.let {
|
||||
@@ -197,8 +209,9 @@ class ScriptTemplateTest {
|
||||
|
||||
@Test
|
||||
fun testScriptWithStandardTemplate() {
|
||||
val aClass = compileScript("fib_std.kts", ScriptTemplateWithArgs::class, runIsolated = false)
|
||||
Assert.assertNotNull(aClass)
|
||||
val messageCollector = TestMessageCollector()
|
||||
val aClass = compileScript("fib_std.kts", ScriptTemplateWithArgs::class, runIsolated = false, messageCollector = messageCollector)
|
||||
Assert.assertNotNull("Compilation failed:\n$messageCollector", aClass)
|
||||
captureOut {
|
||||
aClass!!.getConstructor(Array<String>::class.java).newInstance(arrayOf("4", "other"))
|
||||
}.let {
|
||||
@@ -208,8 +221,9 @@ class ScriptTemplateTest {
|
||||
|
||||
@Test
|
||||
fun testScriptWithPackage() {
|
||||
val aClass = compileScript("fib.pkg.kts", ScriptWithIntParam::class)
|
||||
Assert.assertNotNull(aClass)
|
||||
val messageCollector = TestMessageCollector()
|
||||
val aClass = compileScript("fib.pkg.kts", ScriptWithIntParam::class, messageCollector = messageCollector)
|
||||
Assert.assertNotNull("Compilation failed:\n$messageCollector", aClass)
|
||||
captureOut {
|
||||
aClass!!.getConstructor(Integer.TYPE).newInstance(4)
|
||||
}.let {
|
||||
@@ -219,8 +233,9 @@ class ScriptTemplateTest {
|
||||
|
||||
@Test
|
||||
fun testScriptWithScriptDefinition() {
|
||||
val aClass = compileScript("fib.kts", ScriptWithIntParam::class)
|
||||
Assert.assertNotNull(aClass)
|
||||
val messageCollector = TestMessageCollector()
|
||||
val aClass = compileScript("fib.kts", ScriptWithIntParam::class, messageCollector = messageCollector)
|
||||
Assert.assertNotNull("Compilation failed:\n$messageCollector", aClass)
|
||||
captureOut {
|
||||
aClass!!.getConstructor(Integer.TYPE).newInstance(4)
|
||||
}.let {
|
||||
@@ -230,8 +245,9 @@ class ScriptTemplateTest {
|
||||
|
||||
@Test
|
||||
fun testScriptWithParamConversion() {
|
||||
val aClass = compileScript("fib.kts", ScriptWithIntParam::class)
|
||||
Assert.assertNotNull(aClass)
|
||||
val messageCollector = TestMessageCollector()
|
||||
val aClass = compileScript("fib.kts", ScriptWithIntParam::class, messageCollector = messageCollector)
|
||||
Assert.assertNotNull("Compilation failed:\n$messageCollector", aClass)
|
||||
captureOut {
|
||||
val anObj = tryConstructClassFromStringArgs(aClass!!, listOf("4"))
|
||||
Assert.assertNotNull(anObj)
|
||||
@@ -253,8 +269,9 @@ class ScriptTemplateTest {
|
||||
|
||||
@Test
|
||||
fun testAsyncResolver() {
|
||||
val aClass = compileScript("fib.kts", ScriptWithAsyncResolver::class, null)
|
||||
Assert.assertNotNull(aClass)
|
||||
val messageCollector = TestMessageCollector()
|
||||
val aClass = compileScript("fib.kts", ScriptWithAsyncResolver::class, null, messageCollector = messageCollector)
|
||||
Assert.assertNotNull("Compilation failed:\n$messageCollector", aClass)
|
||||
val out = captureOut {
|
||||
aClass!!.getConstructor(Integer.TYPE).newInstance(4)
|
||||
}
|
||||
@@ -263,32 +280,37 @@ class ScriptTemplateTest {
|
||||
|
||||
@Test
|
||||
fun testAcceptedAnnotationsSync() {
|
||||
val aClass = compileScript("acceptedAnnotations.kts", ScriptWithAcceptedAnnotationsSyncResolver::class, null)
|
||||
Assert.assertNotNull(aClass)
|
||||
val messageCollector = TestMessageCollector()
|
||||
val aClass = compileScript("acceptedAnnotations.kts", ScriptWithAcceptedAnnotationsSyncResolver::class, null, messageCollector = messageCollector)
|
||||
Assert.assertNotNull("Compilation failed:\n$messageCollector", aClass)
|
||||
}
|
||||
|
||||
@Test
|
||||
fun testAcceptedAnnotationsAsync() {
|
||||
val aClass = compileScript("acceptedAnnotations.kts", ScriptWithAcceptedAnnotationsAsyncResolver::class, null)
|
||||
Assert.assertNotNull(aClass)
|
||||
val messageCollector = TestMessageCollector()
|
||||
val aClass = compileScript("acceptedAnnotations.kts", ScriptWithAcceptedAnnotationsAsyncResolver::class, null, messageCollector = messageCollector)
|
||||
Assert.assertNotNull("Compilation failed:\n$messageCollector", aClass)
|
||||
}
|
||||
|
||||
@Test
|
||||
fun testAcceptedAnnotationsLegacy() {
|
||||
val aClass = compileScript("acceptedAnnotations.kts", ScriptWithAcceptedAnnotationsLegacyResolver::class, null)
|
||||
Assert.assertNotNull(aClass)
|
||||
val messageCollector = TestMessageCollector()
|
||||
val aClass = compileScript("acceptedAnnotations.kts", ScriptWithAcceptedAnnotationsLegacyResolver::class, null, messageCollector = messageCollector)
|
||||
Assert.assertNotNull("Compilation failed:\n$messageCollector", aClass)
|
||||
}
|
||||
|
||||
@Test
|
||||
fun testSeveralConstructors() {
|
||||
val aClass = compileScript("fib.kts", ScriptWithSeveralConstructorsResolver::class, null)
|
||||
Assert.assertNotNull(aClass)
|
||||
val messageCollector = TestMessageCollector()
|
||||
val aClass = compileScript("fib.kts", ScriptWithSeveralConstructorsResolver::class, null, messageCollector = messageCollector)
|
||||
Assert.assertNotNull("Compilation failed:\n$messageCollector", aClass)
|
||||
}
|
||||
|
||||
@Test
|
||||
fun testConstructorWithDefaultArgs() {
|
||||
val aClass = compileScript("fib.kts", ScriptWithDefaultArgsResolver::class, null)
|
||||
Assert.assertNotNull(aClass)
|
||||
val messageCollector = TestMessageCollector()
|
||||
val aClass = compileScript("fib.kts", ScriptWithDefaultArgsResolver::class, null, messageCollector = messageCollector)
|
||||
Assert.assertNotNull("Compilation failed:\n$messageCollector", aClass)
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -301,8 +323,9 @@ class ScriptTemplateTest {
|
||||
|
||||
@Test
|
||||
fun testSmokeScriptException() {
|
||||
val aClass = compileScript("smoke_exception.kts", ScriptWithArrayParam::class)
|
||||
Assert.assertNotNull(aClass)
|
||||
val messageCollector = TestMessageCollector()
|
||||
val aClass = compileScript("smoke_exception.kts", ScriptWithArrayParam::class, messageCollector = messageCollector)
|
||||
Assert.assertNotNull("Compilation failed:\n$messageCollector", aClass)
|
||||
var exceptionThrown = false
|
||||
try {
|
||||
tryConstructClassFromStringArgs(aClass!!, emptyList())
|
||||
@@ -349,7 +372,12 @@ class ScriptTemplateTest {
|
||||
): Class<*>? {
|
||||
val rootDisposable = Disposer.newDisposable()
|
||||
try {
|
||||
val configuration = KotlinTestUtils.newConfiguration(if (includeKotlinRuntime) ConfigurationKind.ALL else ConfigurationKind.JDK_ONLY, TestJdkKind.FULL_JDK)
|
||||
val additionalClasspath = System.getProperty("kotlin.test.script.classpath")?.split(File.pathSeparator)
|
||||
?.map{ File(it) }.orEmpty().toTypedArray()
|
||||
val configuration = KotlinTestUtils.newConfiguration(
|
||||
if (includeKotlinRuntime) ConfigurationKind.ALL else ConfigurationKind.JDK_ONLY,
|
||||
TestJdkKind.FULL_JDK,
|
||||
*additionalClasspath)
|
||||
configuration.put(CLIConfigurationKeys.MESSAGE_COLLECTOR_KEY, messageCollector)
|
||||
configuration.addKotlinSourceRoot(scriptPath)
|
||||
configuration.add(JVMConfigurationKeys.SCRIPT_DEFINITIONS, scriptDefinition)
|
||||
|
||||
Reference in New Issue
Block a user