diff --git a/js/js.tests/tests-gen/org/jetbrains/kotlin/incremental/InvalidationTestGenerated.java b/js/js.tests/tests-gen/org/jetbrains/kotlin/incremental/InvalidationTestGenerated.java index 4dd51ec0c0e..ffd542d9741 100644 --- a/js/js.tests/tests-gen/org/jetbrains/kotlin/incremental/InvalidationTestGenerated.java +++ b/js/js.tests/tests-gen/org/jetbrains/kotlin/incremental/InvalidationTestGenerated.java @@ -170,6 +170,11 @@ public class InvalidationTestGenerated extends AbstractInvalidationTest { runTest("js/js.translator/testData/incremental/invalidation/jsExport/"); } + @TestMetadata("jsModuleAnnotation") + public void testJsModuleAnnotation() throws Exception { + runTest("js/js.translator/testData/incremental/invalidation/jsModuleAnnotation/"); + } + @TestMetadata("mainModuleInvalidation") public void testMainModuleInvalidation() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/mainModuleInvalidation/"); diff --git a/js/js.translator/testData/incremental/invalidation/jsModuleAnnotation/lib1/ObjectA.kt b/js/js.translator/testData/incremental/invalidation/jsModuleAnnotation/lib1/ObjectA.kt new file mode 100644 index 00000000000..af2bc7f9372 --- /dev/null +++ b/js/js.translator/testData/incremental/invalidation/jsModuleAnnotation/lib1/ObjectA.kt @@ -0,0 +1,5 @@ +@file:JsNonModule +@file:JsModule("lib1") +external open class ObjectA { + open var callable: (a: Any, b: Any, c: Any, d: dynamic, e: Any, f: Any) -> Unit +} diff --git a/js/js.translator/testData/incremental/invalidation/jsModuleAnnotation/lib1/ObjectB.0.kt b/js/js.translator/testData/incremental/invalidation/jsModuleAnnotation/lib1/ObjectB.0.kt new file mode 100644 index 00000000000..d80af4dd748 --- /dev/null +++ b/js/js.translator/testData/incremental/invalidation/jsModuleAnnotation/lib1/ObjectB.0.kt @@ -0,0 +1,4 @@ +//@file:JsNonModule +//@file:JsModule("lib1") +external open class ObjectB(a: T1 = definedExternally, b: T2 = definedExternally, c: Number = definedExternally) : ObjectA + diff --git a/js/js.translator/testData/incremental/invalidation/jsModuleAnnotation/lib1/ObjectB.1.kt b/js/js.translator/testData/incremental/invalidation/jsModuleAnnotation/lib1/ObjectB.1.kt new file mode 100644 index 00000000000..b78c9f11b64 --- /dev/null +++ b/js/js.translator/testData/incremental/invalidation/jsModuleAnnotation/lib1/ObjectB.1.kt @@ -0,0 +1,4 @@ +@file:JsNonModule +@file:JsModule("lib1") +external open class ObjectB(a: T1 = definedExternally, b: T2 = definedExternally, c: Number = definedExternally) : ObjectA + diff --git a/js/js.translator/testData/incremental/invalidation/jsModuleAnnotation/lib1/module.info b/js/js.translator/testData/incremental/invalidation/jsModuleAnnotation/lib1/module.info new file mode 100644 index 00000000000..af801b91a1c --- /dev/null +++ b/js/js.translator/testData/incremental/invalidation/jsModuleAnnotation/lib1/module.info @@ -0,0 +1,8 @@ +STEP 0: + modifications: + U : ObjectB.0.kt -> ObjectB.kt + added file: ObjectA.kt, ObjectB.kt +STEP 1: + modifications: + U : ObjectB.1.kt -> ObjectB.kt + modified ir: ObjectB.kt diff --git a/js/js.translator/testData/incremental/invalidation/jsModuleAnnotation/main/m.kt b/js/js.translator/testData/incremental/invalidation/jsModuleAnnotation/main/m.kt new file mode 100644 index 00000000000..eb23b7f6077 --- /dev/null +++ b/js/js.translator/testData/incremental/invalidation/jsModuleAnnotation/main/m.kt @@ -0,0 +1,5 @@ +fun test(x: ObjectB?) = if (x == null) "OK" else "fail" + +fun box(stepId: Int): String { + return test(null) +} diff --git a/js/js.translator/testData/incremental/invalidation/jsModuleAnnotation/main/module.info b/js/js.translator/testData/incremental/invalidation/jsModuleAnnotation/main/module.info new file mode 100644 index 00000000000..5d087aa0643 --- /dev/null +++ b/js/js.translator/testData/incremental/invalidation/jsModuleAnnotation/main/module.info @@ -0,0 +1,5 @@ +STEP 0: + dependencies: lib1 + added file: m.kt +STEP 1: + dependencies: lib1 diff --git a/js/js.translator/testData/incremental/invalidation/jsModuleAnnotation/project.info b/js/js.translator/testData/incremental/invalidation/jsModuleAnnotation/project.info new file mode 100644 index 00000000000..425cf7cc77f --- /dev/null +++ b/js/js.translator/testData/incremental/invalidation/jsModuleAnnotation/project.info @@ -0,0 +1,8 @@ +MODULES: lib1, main + +STEP 0: + libs: lib1, main + dirty js: lib1, main +STEP 1: + libs: lib1, main + dirty js: lib1