Merge remote-tracking branch 'origin/master'

This commit is contained in:
Pavel V. Talanov
2012-08-16 17:54:20 +04:00
3 changed files with 46 additions and 18 deletions
@@ -0,0 +1,9 @@
trait A {
val method : (() -> Unit)?
}
fun test(a : A) {
if (a.method != null) {
a.method!!()
}
}
@@ -0,0 +1,9 @@
trait A {
val method : () -> Unit?
}
fun test(a : A) {
if (a.method != null) {
a.method!!()
}
}
@@ -40,32 +40,32 @@ public class FunctionGenTest extends CodegenTestCase {
public void testDefaultArgs() throws Exception {
blackBoxFile("functions/defaultargs.jet");
// System.out.println(generateToText());
// System.out.println(generateToText());
}
public void testDefaultArgs1() throws Exception {
blackBoxFile("functions/defaultargs1.jet");
// System.out.println(generateToText());
// System.out.println(generateToText());
}
public void testDefaultArgs2() throws Exception {
blackBoxFile("functions/defaultargs2.jet");
// System.out.println(generateToText());
// System.out.println(generateToText());
}
public void testDefaultArgs3() throws Exception {
blackBoxFile("functions/defaultargs3.jet");
// System.out.println(generateToText());
// System.out.println(generateToText());
}
public void testDefaultArgs4() throws Exception {
blackBoxFile("functions/defaultargs4.jet");
// System.out.println(generateToText());
// System.out.println(generateToText());
}
public void testDefaultArgs5() throws Exception {
blackBoxFile("functions/defaultargs5.jet");
// System.out.println(generateToText());
// System.out.println(generateToText());
}
public void testDefaultArgs6() {
@@ -78,50 +78,50 @@ public class FunctionGenTest extends CodegenTestCase {
public void testNoThisNoClosure() throws Exception {
blackBoxFile("functions/nothisnoclosure.jet");
// System.out.println(generateToText());
// System.out.println(generateToText());
}
public void testAnyEqualsNullable () throws InvocationTargetException, IllegalAccessException {
public void testAnyEqualsNullable() throws InvocationTargetException, IllegalAccessException {
loadText("fun foo(x: Any?) = x.equals(\"lala\")");
// System.out.println(generateToText());
// System.out.println(generateToText());
Method foo = generateFunction();
assertTrue((Boolean) foo.invoke(null, "lala"));
assertFalse((Boolean) foo.invoke(null, "mama"));
}
public void testAnyEquals () throws InvocationTargetException, IllegalAccessException {
public void testAnyEquals() throws InvocationTargetException, IllegalAccessException {
loadText("fun foo(x: Any) = x.equals(\"lala\")");
// System.out.println(generateToText());
// System.out.println(generateToText());
Method foo = generateFunction();
assertTrue((Boolean) foo.invoke(null, "lala"));
assertFalse((Boolean) foo.invoke(null, "mama"));
}
public void testKt395 () {
public void testKt395() {
blackBoxFile("regressions/kt395.jet");
}
public void testKt785 () {
public void testKt785() {
blackBoxFile("regressions/kt785.jet");
}
public void testKt873 () {
public void testKt873() {
blackBoxFile("regressions/kt873.kt");
}
public void testKt1413 () {
public void testKt1413() {
blackBoxFile("regressions/kt1413.kt");
}
public void testKt1199 () {
public void testKt1199() {
blackBoxFile("regressions/kt1199.kt");
}
public void testFunction () throws InvocationTargetException, IllegalAccessException {
public void testFunction() throws InvocationTargetException, IllegalAccessException {
blackBoxFile("functions/functionExpression.jet");
}
public void testLocalFunction () throws InvocationTargetException, IllegalAccessException {
public void testLocalFunction() throws InvocationTargetException, IllegalAccessException {
blackBoxFile("functions/localFunction.kt");
}
@@ -149,6 +149,16 @@ public class FunctionGenTest extends CodegenTestCase {
blackBoxFile("regressions/kt2270.kt");
}
public void testK1649_1() {
loadFile("regressions/kt1649_1.kt");
generateToText();
}
public void testK1649_2() {
loadFile("regressions/kt1649_2.kt");
generateToText();
}
public static class WithJavaFunctionGenTest extends CodegenTestCase {
private void blackBoxFileWithJava(@NotNull String ktFile) throws Exception {
File javaClassesTempDirectory = new File(FileUtil.getTempDirectory(), "java-classes");