From 9d848cb8a597c1caa47239a8682d1752ee7117b0 Mon Sep 17 00:00:00 2001 From: Pavel Talanov Date: Wed, 16 Nov 2011 19:40:28 +0400 Subject: [PATCH] Added a test for a trait extending two traits. --- .../org/jetbrains/k2js/test/TraitTest.java | 5 ++++ .../trait/cases/traitExtendsTwoTraits.kt | 25 +++++++++++++++++++ 2 files changed, 30 insertions(+) create mode 100644 translator/testFiles/trait/cases/traitExtendsTwoTraits.kt diff --git a/translator/test/org/jetbrains/k2js/test/TraitTest.java b/translator/test/org/jetbrains/k2js/test/TraitTest.java index b08ef053be9..a153e15458c 100644 --- a/translator/test/org/jetbrains/k2js/test/TraitTest.java +++ b/translator/test/org/jetbrains/k2js/test/TraitTest.java @@ -39,4 +39,9 @@ public final class TraitTest extends AbstractClassTest { testFooBoxIsTrue("traitExtendsTrait.kt"); } + @Test + public void traitExtendsTwoTraits() throws Exception { + testFooBoxIsTrue("traitExtendsTwoTraits.kt"); + } + } diff --git a/translator/testFiles/trait/cases/traitExtendsTwoTraits.kt b/translator/testFiles/trait/cases/traitExtendsTwoTraits.kt new file mode 100644 index 00000000000..fa28a2a94c9 --- /dev/null +++ b/translator/testFiles/trait/cases/traitExtendsTwoTraits.kt @@ -0,0 +1,25 @@ +namespace foo + +trait A { + fun addFoo(s:String) : String { + return s + "FOO" + } +} + +trait B { + fun hooray() : String { + return "hooray" + } +} + +trait AD : A, B { + +} + +class Test() : AD { + fun eval() : String { + return addFoo(hooray()); + } +} + +fun box() = (Test().eval() == "hoorayFOO") \ No newline at end of file