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 840dbfa0134..d89a02f9482 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 @@ -6818,6 +6818,12 @@ public class BoxJsTestGenerated extends AbstractBoxJsTest { KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("js/js.translator/testData/box/reflection"), Pattern.compile("^([^_](.+))\\.kt$"), TargetBackend.JS, true); } + @TestMetadata("external.kt") + public void testExternal() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("js/js.translator/testData/box/reflection/external.kt"); + doTest(fileName); + } + @TestMetadata("jsClass.kt") public void testJsClass() throws Exception { String fileName = KotlinTestUtils.navigationMetadata("js/js.translator/testData/box/reflection/jsClass.kt"); diff --git a/js/js.translator/testData/box/reflection/external.js b/js/js.translator/testData/box/reflection/external.js new file mode 100644 index 00000000000..656dfd4ff68 --- /dev/null +++ b/js/js.translator/testData/box/reflection/external.js @@ -0,0 +1,4 @@ +function A() { +} + +var O = {}; \ No newline at end of file diff --git a/js/js.translator/testData/box/reflection/external.kt b/js/js.translator/testData/box/reflection/external.kt new file mode 100644 index 00000000000..85a4305490c --- /dev/null +++ b/js/js.translator/testData/box/reflection/external.kt @@ -0,0 +1,13 @@ +external class A + +external object O + +fun box(): String { + assertEquals(null, A::class.simpleName, "simpleName of external class must be null") + assertEquals(js("A"), A::class.js, "Can't get reference to external class") + + assertEquals(null, O::class.simpleName, "simpleName of external object must be null") + assertEquals(js("O"), O::class.js, "Can't get reference to external object via instance") + + return "OK" +} \ No newline at end of file