[K/JS] Add test for the private inner class bug ^KT-65657
This commit is contained in:
+6
@@ -2623,6 +2623,12 @@ public class FirJsES6BoxTestGenerated extends AbstractFirJsES6BoxTest {
|
||||
runTest("js/js.translator/testData/box/esModules/jsExport/perFileExportedApi.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("privateInnerClass.kt")
|
||||
public void testPrivateInnerClass() {
|
||||
runTest("js/js.translator/testData/box/esModules/jsExport/privateInnerClass.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("recursiveExport.kt")
|
||||
public void testRecursiveExport() {
|
||||
|
||||
Generated
+6
@@ -2517,6 +2517,12 @@ public class FirLightTreeJsBoxTestGenerated extends AbstractFirLightTreeJsBoxTes
|
||||
runTest("js/js.translator/testData/box/esModules/jsExport/perFileExportedApi.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("privateInnerClass.kt")
|
||||
public void testPrivateInnerClass() {
|
||||
runTest("js/js.translator/testData/box/esModules/jsExport/privateInnerClass.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("recursiveExport.kt")
|
||||
public void testRecursiveExport() {
|
||||
|
||||
+6
@@ -2517,6 +2517,12 @@ public class FirPsiJsBoxTestGenerated extends AbstractFirPsiJsBoxTest {
|
||||
runTest("js/js.translator/testData/box/esModules/jsExport/perFileExportedApi.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("privateInnerClass.kt")
|
||||
public void testPrivateInnerClass() {
|
||||
runTest("js/js.translator/testData/box/esModules/jsExport/privateInnerClass.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("recursiveExport.kt")
|
||||
public void testRecursiveExport() {
|
||||
|
||||
+6
@@ -2623,6 +2623,12 @@ public class IrBoxJsES6TestGenerated extends AbstractIrBoxJsES6Test {
|
||||
runTest("js/js.translator/testData/box/esModules/jsExport/perFileExportedApi.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("privateInnerClass.kt")
|
||||
public void testPrivateInnerClass() {
|
||||
runTest("js/js.translator/testData/box/esModules/jsExport/privateInnerClass.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("recursiveExport.kt")
|
||||
public void testRecursiveExport() {
|
||||
|
||||
+6
@@ -2517,6 +2517,12 @@ public class IrBoxJsTestGenerated extends AbstractIrBoxJsTest {
|
||||
runTest("js/js.translator/testData/box/esModules/jsExport/perFileExportedApi.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("privateInnerClass.kt")
|
||||
public void testPrivateInnerClass() {
|
||||
runTest("js/js.translator/testData/box/esModules/jsExport/privateInnerClass.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("recursiveExport.kt")
|
||||
public void testRecursiveExport() {
|
||||
|
||||
@@ -0,0 +1,33 @@
|
||||
// KT-65657
|
||||
// DONT_TARGET_EXACT_BACKEND: JS
|
||||
// SKIP_MINIFICATION
|
||||
// ES_MODULES
|
||||
|
||||
// FILE: main.kt
|
||||
@JsExport
|
||||
open class TableDriver {
|
||||
|
||||
private inner class Table
|
||||
|
||||
fun foo() = "OK"
|
||||
}
|
||||
external interface JsResult {
|
||||
val value: String
|
||||
val inner: Any?
|
||||
}
|
||||
|
||||
@JsModule("./privateInnerClass.mjs")
|
||||
external fun jsBox(): JsResult
|
||||
|
||||
fun box(): String {
|
||||
val res = jsBox()
|
||||
|
||||
if (res.value != "OK") {
|
||||
return "Fail: value is ${res.value}"
|
||||
}
|
||||
if (res.inner != null) {
|
||||
return "Fail: inner is ${res.inner}"
|
||||
}
|
||||
|
||||
return "OK"
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
import { TableDriver } from "./privateInnerClass_v5.mjs"
|
||||
|
||||
export default function box() {
|
||||
var tableDriver = new TableDriver();
|
||||
|
||||
return {
|
||||
value: tableDriver.foo(),
|
||||
inner: tableDriver.Table
|
||||
};
|
||||
};
|
||||
Reference in New Issue
Block a user