From 5313cf3bf069fdc99c2d195b59e5e351909044cf Mon Sep 17 00:00:00 2001 From: Alexander Udalov Date: Fri, 25 Jan 2013 16:47:09 +0400 Subject: [PATCH] Fix failing tests, copy testData Some tests were using files that others called blackBoxFile() on. Since those files are now moved to box/, copy them back to make the tests pass --- .../codegen/componentEvaluatesOnlyOnce.kt | 17 +++++++++++++++++ .../testData/codegen/enum/abstractmethod.kt | 10 ++++++++++ compiler/testData/codegen/enum/name.kt | 6 ++++++ compiler/testData/codegen/enum/simple.kt | 12 ++++++++++++ .../jetbrains/jet/codegen/ComponentGenTest.java | 2 +- 5 files changed, 46 insertions(+), 1 deletion(-) create mode 100644 compiler/testData/codegen/componentEvaluatesOnlyOnce.kt create mode 100644 compiler/testData/codegen/enum/abstractmethod.kt create mode 100644 compiler/testData/codegen/enum/name.kt create mode 100644 compiler/testData/codegen/enum/simple.kt diff --git a/compiler/testData/codegen/componentEvaluatesOnlyOnce.kt b/compiler/testData/codegen/componentEvaluatesOnlyOnce.kt new file mode 100644 index 00000000000..ec5b515705b --- /dev/null +++ b/compiler/testData/codegen/componentEvaluatesOnlyOnce.kt @@ -0,0 +1,17 @@ +class S(val a: String, val b: String) { + fun component1() : String = a + fun component2() : String = b +} + +fun S.component3() = ((a + b) as java.lang.String).substring(2) + +class Tester() { + fun box() : String { + val (o,k,ok,ok2) = S("O","K") + return o + k + ok + ok2 + } + + fun S.component4() = ((a + b) as java.lang.String).substring(2) +} + +fun box() = Tester().box() \ No newline at end of file diff --git a/compiler/testData/codegen/enum/abstractmethod.kt b/compiler/testData/codegen/enum/abstractmethod.kt new file mode 100644 index 00000000000..003a3708f53 --- /dev/null +++ b/compiler/testData/codegen/enum/abstractmethod.kt @@ -0,0 +1,10 @@ +fun box() = IssueState.DEFAULT.ToString() + IssueState.FIXED.ToString() + +enum class IssueState { + DEFAULT + FIXED { + override fun ToString() = "K" + } + + open fun ToString() : String = "O" +} diff --git a/compiler/testData/codegen/enum/name.kt b/compiler/testData/codegen/enum/name.kt new file mode 100644 index 00000000000..3759f1b46ca --- /dev/null +++ b/compiler/testData/codegen/enum/name.kt @@ -0,0 +1,6 @@ +enum class State { + O + K +} + +fun box() = "${State.O.name()}${State.K.name()}" diff --git a/compiler/testData/codegen/enum/simple.kt b/compiler/testData/codegen/enum/simple.kt new file mode 100644 index 00000000000..da6520f09c3 --- /dev/null +++ b/compiler/testData/codegen/enum/simple.kt @@ -0,0 +1,12 @@ +enum class Season { + WINTER + SPRING + SUMMER + AUTUMN +} + +fun foo(): Season = Season.SPRING + +fun box() = + if (foo() == Season.SPRING) "OK" + else "fail" diff --git a/compiler/tests/org/jetbrains/jet/codegen/ComponentGenTest.java b/compiler/tests/org/jetbrains/jet/codegen/ComponentGenTest.java index 5d28c249c48..2137a0b3906 100644 --- a/compiler/tests/org/jetbrains/jet/codegen/ComponentGenTest.java +++ b/compiler/tests/org/jetbrains/jet/codegen/ComponentGenTest.java @@ -25,7 +25,7 @@ import org.jetbrains.jet.ConfigurationKind; public class ComponentGenTest extends CodegenTestCase { public void testComponent() { createEnvironmentWithMockJdkAndIdeaAnnotations(ConfigurationKind.JDK_ONLY); - blackBoxFile("/multiDecl/component.kt"); + blackBoxFile("componentEvaluatesOnlyOnce.kt"); String asm = generateToText(); //System.out.println(asm);