diff --git a/js/js.tests/test/org/jetbrains/k2js/test/semantics/NameClashesTest.java b/js/js.tests/test/org/jetbrains/k2js/test/semantics/NameClashesTest.java index ad7aeb03dd6..563245d7a36 100644 --- a/js/js.tests/test/org/jetbrains/k2js/test/semantics/NameClashesTest.java +++ b/js/js.tests/test/org/jetbrains/k2js/test/semantics/NameClashesTest.java @@ -31,4 +31,10 @@ public final class NameClashesTest extends SingleFileTranslationTest { public void testMethodOverload() throws Exception { fooBoxTest(); } + + //TODO: + @SuppressWarnings("UnusedDeclaration") + public void TODO_testDifferenceInCapitalization() throws Exception { + fooBoxTest(); + } } \ No newline at end of file diff --git a/js/js.translator/testFiles/additional/cases/resolveOrder.jet b/js/js.translator/testFiles/additional/cases/resolveOrder.jet new file mode 100644 index 00000000000..3770367675d --- /dev/null +++ b/js/js.translator/testFiles/additional/cases/resolveOrder.jet @@ -0,0 +1,75 @@ +fun box() : String { + if (!B().test()) return "fail 1"; + if (!D().test()) return "fail 2" + if (!F().test()) return "fail 3" + if (!L().test()) return "fail 4" + if (!H().test()) return "fail 5" + if (!N().test()) return "fail 6" + return "OK" +} + +class A { + fun foo() = 1 +} + +class B { + fun foo() = 2 + + fun A.bar() = foo() + + fun test() = A().bar() == 1 +} + + +class C { + fun D.foo() = 2 +} + +class D { + fun C.foo() = 1 + + fun C.bar() = foo() + + fun test() = C().bar() == 1 +} + +class E +fun E.foo() = 2 + +class F { + fun foo() = 1 + + fun E.bar() = foo() + + fun test() = E().bar() == 1 +} + +class G +fun G.foo() = 2 + +class H { + fun G.foo() = 1 + + fun G.bar() = foo() + + fun test() = G().bar() == 1 +} + +class K +class L { + fun K.bar() = foo() + + fun test() = K().bar() == 1 +} +fun K.foo() = 1 +fun L.foo() = 2 + +class M +class N { + fun foo() = 1 + fun M.foo() = 2 + + fun M.bar() = foo() + + fun test() = M().bar() == 1 +} diff --git a/js/js.translator/testFiles/examples/sortedTests/unsupported/simpleBox.jet b/js/js.translator/testFiles/nameClashes/cases/differenceInCapitalization.kt similarity index 91% rename from js/js.translator/testFiles/examples/sortedTests/unsupported/simpleBox.jet rename to js/js.translator/testFiles/nameClashes/cases/differenceInCapitalization.kt index be95d012d51..e76907cbfb2 100644 --- a/js/js.translator/testFiles/examples/sortedTests/unsupported/simpleBox.jet +++ b/js/js.translator/testFiles/nameClashes/cases/differenceInCapitalization.kt @@ -1,3 +1,5 @@ +package foo + class Box(t: T) { var value = t }