enhance tests (mostly codegen)
* drop dependency on stdlib/alt-headers in the most tests * assign to myEnvironment at most once in JetLiteFixture * more tests do not compile runtime
This commit is contained in:
@@ -16,6 +16,8 @@
|
||||
|
||||
package org.jetbrains.jet.codegen;
|
||||
|
||||
import org.jetbrains.jet.lang.resolve.java.CompilerSpecialMode;
|
||||
|
||||
import java.lang.reflect.Array;
|
||||
import java.lang.reflect.InvocationTargetException;
|
||||
import java.lang.reflect.Method;
|
||||
@@ -26,6 +28,7 @@ import java.util.Arrays;
|
||||
*/
|
||||
public class VarArgTest extends CodegenTestCase {
|
||||
public void testStringArray () throws InvocationTargetException, IllegalAccessException {
|
||||
createEnvironmentWithMockJdk(CompilerSpecialMode.JDK_HEADERS);
|
||||
loadText("fun test(vararg ts: String) = ts");
|
||||
// System.out.println(generateToText());
|
||||
final Method main = generateFunction();
|
||||
@@ -34,6 +37,7 @@ public class VarArgTest extends CodegenTestCase {
|
||||
}
|
||||
|
||||
public void testIntArray () throws InvocationTargetException, IllegalAccessException {
|
||||
createEnvironmentWithMockJdk(CompilerSpecialMode.JDK_HEADERS);
|
||||
loadText("fun test(vararg ts: Int) = ts");
|
||||
// System.out.println(generateToText());
|
||||
final Method main = generateFunction();
|
||||
@@ -42,6 +46,7 @@ public class VarArgTest extends CodegenTestCase {
|
||||
}
|
||||
|
||||
public void testIntArrayKotlinNoArgs () throws InvocationTargetException, IllegalAccessException {
|
||||
createEnvironmentWithMockJdk(CompilerSpecialMode.JDK_HEADERS);
|
||||
loadText("fun test() = testf(); fun testf(vararg ts: Int) = ts");
|
||||
// System.out.println(generateToText());
|
||||
final Method main = generateFunction("test");
|
||||
@@ -50,6 +55,7 @@ public class VarArgTest extends CodegenTestCase {
|
||||
}
|
||||
|
||||
public void testIntArrayKotlin () throws InvocationTargetException, IllegalAccessException {
|
||||
createEnvironmentWithMockJdk(CompilerSpecialMode.JDK_HEADERS);
|
||||
loadText("fun test() = testf(239, 7); fun testf(vararg ts: Int) = ts");
|
||||
// System.out.println(generateToText());
|
||||
final Method main = generateFunction("test");
|
||||
@@ -60,6 +66,7 @@ public class VarArgTest extends CodegenTestCase {
|
||||
}
|
||||
|
||||
public void testNullableIntArrayKotlin () throws InvocationTargetException, IllegalAccessException {
|
||||
createEnvironmentWithMockJdk(CompilerSpecialMode.JDK_HEADERS);
|
||||
loadText("fun test() = testf(239.toByte(), 7.toByte()); fun testf(vararg ts: Byte?) = ts");
|
||||
// System.out.println(generateToText());
|
||||
final Method main = generateFunction("test");
|
||||
@@ -70,6 +77,7 @@ public class VarArgTest extends CodegenTestCase {
|
||||
}
|
||||
|
||||
public void testIntArrayKotlinObj () throws InvocationTargetException, IllegalAccessException {
|
||||
createEnvironmentWithMockJdk(CompilerSpecialMode.JDK_HEADERS);
|
||||
loadText("fun test() = testf(\"239\"); fun testf(vararg ts: String) = ts");
|
||||
// System.out.println(generateToText());
|
||||
final Method main = generateFunction("test");
|
||||
@@ -79,6 +87,7 @@ public class VarArgTest extends CodegenTestCase {
|
||||
}
|
||||
|
||||
public void testArrayT () throws InvocationTargetException, IllegalAccessException {
|
||||
createEnvironmentWithMockJdk(CompilerSpecialMode.JDK_HEADERS);
|
||||
loadText("fun test() = _array(2, 4); fun <T> _array(vararg elements : T) = elements");
|
||||
// System.out.println(generateToText());
|
||||
final Method main = generateFunction("test");
|
||||
@@ -94,10 +103,12 @@ public class VarArgTest extends CodegenTestCase {
|
||||
}
|
||||
|
||||
public void testKt797() {
|
||||
createEnvironmentWithMockJdk(CompilerSpecialMode.JDK_HEADERS);
|
||||
blackBoxFile("regressions/kt796_797.jet");
|
||||
}
|
||||
|
||||
public void testArrayAsVararg () throws InvocationTargetException, IllegalAccessException {
|
||||
createEnvironmentWithMockJdk(CompilerSpecialMode.JDK_HEADERS);
|
||||
loadText("private fun asList(vararg elems: String) = elems; fun test(ts: Array<String>) = asList(*ts); ");
|
||||
//System.out.println(generateToText());
|
||||
final Method main = generateFunction("test");
|
||||
@@ -106,6 +117,7 @@ public class VarArgTest extends CodegenTestCase {
|
||||
}
|
||||
|
||||
public void testArrayAsVararg2 () throws InvocationTargetException, IllegalAccessException {
|
||||
createEnvironmentWithMockJdk(CompilerSpecialMode.JDK_HEADERS);
|
||||
loadText("private fun asList(vararg elems: String) = elems; fun test(ts1: Array<String>, ts2: String) = asList(*ts1, ts2); ");
|
||||
System.out.println(generateToText());
|
||||
final Method main = generateFunction("test");
|
||||
|
||||
Reference in New Issue
Block a user