From 7ad452109f8217f905bf295763f61e54bce73943 Mon Sep 17 00:00:00 2001 From: Stepan Koltsov Date: Thu, 9 Feb 2012 18:39:10 +0400 Subject: [PATCH] split SuperGenTest.basicmethod --- .../testData/codegen/super/basicmethod.jet | 21 ------------------- .../codegen/super/basicmethodSuperClass.jet | 17 +++++++++++++++ .../codegen/super/basicmethodSuperTrait.jet | 15 +++++++++++++ .../jetbrains/jet/codegen/SuperGenTest.java | 9 ++++++-- 4 files changed, 39 insertions(+), 23 deletions(-) delete mode 100644 compiler/testData/codegen/super/basicmethod.jet create mode 100644 compiler/testData/codegen/super/basicmethodSuperClass.jet create mode 100644 compiler/testData/codegen/super/basicmethodSuperTrait.jet diff --git a/compiler/testData/codegen/super/basicmethod.jet b/compiler/testData/codegen/super/basicmethod.jet deleted file mode 100644 index 9920bc3b69d..00000000000 --- a/compiler/testData/codegen/super/basicmethod.jet +++ /dev/null @@ -1,21 +0,0 @@ -import java.util.ArrayList - -trait Tr { - fun extra() : String = "_" -} - -class N() : ArrayList(), Tr { - override fun add(el: Any) : Boolean { - super.add(el) - return super.add(el.toString() + super.extra() + el + extra()) - } - - override fun extra() : String = super.extra() + super.extra() -} - -fun box(): String { - val n = N() - n.add("239") - if (n.get(0) == "239" && n.get(1) == "239_239__") return "OK"; - return "fail"; -} \ No newline at end of file diff --git a/compiler/testData/codegen/super/basicmethodSuperClass.jet b/compiler/testData/codegen/super/basicmethodSuperClass.jet new file mode 100644 index 00000000000..1b8a48bbfe9 --- /dev/null +++ b/compiler/testData/codegen/super/basicmethodSuperClass.jet @@ -0,0 +1,17 @@ +import java.util.ArrayList + +class N() : ArrayList() { + override fun add(el: Any) : Boolean { + if (!super.add(el)) { + throw Exception() + } + return false + } +} + +fun box(): String { + val n = N() + if (n.add("239")) return "fail" + if (n.get(0) == "239") return "OK"; + return "fail"; +} diff --git a/compiler/testData/codegen/super/basicmethodSuperTrait.jet b/compiler/testData/codegen/super/basicmethodSuperTrait.jet new file mode 100644 index 00000000000..29d7cbd13ec --- /dev/null +++ b/compiler/testData/codegen/super/basicmethodSuperTrait.jet @@ -0,0 +1,15 @@ +import java.util.ArrayList + +trait Tr { + fun extra() : String = "_" +} + +class N() : Tr { + override fun extra() : String = super.extra() + super.extra() +} + +fun box(): String { + val n = N() + if (n.extra() == "__") return "OK" + return "fail"; +} diff --git a/compiler/tests/org/jetbrains/jet/codegen/SuperGenTest.java b/compiler/tests/org/jetbrains/jet/codegen/SuperGenTest.java index 0b276174692..6f1792afa31 100644 --- a/compiler/tests/org/jetbrains/jet/codegen/SuperGenTest.java +++ b/compiler/tests/org/jetbrains/jet/codegen/SuperGenTest.java @@ -11,8 +11,13 @@ public class SuperGenTest extends CodegenTestCase { // System.out.println(generateToText()); } - public void testBasicMethod () { - blackBoxFile("/super/basicmethod.jet"); + public void testBasicMethodSuperTrait () { + blackBoxFile("/super/basicmethodSuperTrait.jet"); +// System.out.println(generateToText()); + } + + public void testBasicMethodSuperClass () { + blackBoxFile("/super/basicmethodSuperClass.jet"); // System.out.println(generateToText()); }