diff --git a/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/BoxJsTestGenerated.java b/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/BoxJsTestGenerated.java index c1bb098d182..0348c0c6e85 100644 --- a/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/BoxJsTestGenerated.java +++ b/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/BoxJsTestGenerated.java @@ -3449,6 +3449,18 @@ public class BoxJsTestGenerated extends AbstractBoxJsTest { doTest(fileName); } + @TestMetadata("defaultArguments.kt") + public void testDefaultArguments() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("js/js.translator/testData/box/incremental/defaultArguments.kt"); + doTest(fileName); + } + + @TestMetadata("exportedPackage.kt") + public void testExportedPackage() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("js/js.translator/testData/box/incremental/exportedPackage.kt"); + doTest(fileName); + } + @TestMetadata("inline.kt") public void testInline() throws Exception { String fileName = KotlinTestUtils.navigationMetadata("js/js.translator/testData/box/incremental/inline.kt"); @@ -3460,6 +3472,12 @@ public class BoxJsTestGenerated extends AbstractBoxJsTest { String fileName = KotlinTestUtils.navigationMetadata("js/js.translator/testData/box/incremental/simple.kt"); doTest(fileName); } + + @TestMetadata("syntheticStatement.kt") + public void testSyntheticStatement() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("js/js.translator/testData/box/incremental/syntheticStatement.kt"); + doTest(fileName); + } } @TestMetadata("js/js.translator/testData/box/inheritance") diff --git a/js/js.translator/testData/box/incremental/defaultArguments.kt b/js/js.translator/testData/box/incremental/defaultArguments.kt new file mode 100644 index 00000000000..31310dfe1c9 --- /dev/null +++ b/js/js.translator/testData/box/incremental/defaultArguments.kt @@ -0,0 +1,14 @@ +// FILE: a.kt + +inline fun foo(f: (Int) -> String, x: Int = 23): String = "foo(${f(x)})" + + +// FILE: b.kt +// RECOMPILE + +fun box(): String { + val result = foo({ it.toString() }) + foo({ it.toString() }, 42) + if (result != "foo(23)foo(42)") return "fail: $result" + + return "OK" +} \ No newline at end of file diff --git a/js/js.translator/testData/box/incremental/exportedPackage.kt b/js/js.translator/testData/box/incremental/exportedPackage.kt new file mode 100644 index 00000000000..1acab40fb3f --- /dev/null +++ b/js/js.translator/testData/box/incremental/exportedPackage.kt @@ -0,0 +1,15 @@ +// FILE: a.kt +package foo.bar + +fun o() = "O" + +// FILE: b.kt +package foo.bar + +fun k() = "K" + +// FILE: c.kt +// RECOMPILE +package foo.bar + +fun box() = o() + k() \ No newline at end of file diff --git a/js/js.translator/testData/box/incremental/syntheticStatement.kt b/js/js.translator/testData/box/incremental/syntheticStatement.kt new file mode 100644 index 00000000000..f5e8a3a168f --- /dev/null +++ b/js/js.translator/testData/box/incremental/syntheticStatement.kt @@ -0,0 +1,25 @@ +/// FILE: a.kt + +fun a() = "[" + +fun b() = "]" + +inline fun sideEffect(f: () -> String, g: () -> Unit): String { + g() + return f() +} + +inline fun foo(f: () -> String, g: () -> Unit): String { + return a() + sideEffect(f, g) + b() +} + + +// FILE: b.kt +// RECOMPILE + +fun box(): String { + val result = foo({ "*" }, { }) + if (result != "[*]") return "fail: $result" + + return "OK" +} \ No newline at end of file