[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");
|
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
|
@Test
|
||||||
@TestMetadata("recursiveExport.kt")
|
@TestMetadata("recursiveExport.kt")
|
||||||
public void testRecursiveExport() {
|
public void testRecursiveExport() {
|
||||||
|
|||||||
Generated
+6
@@ -2517,6 +2517,12 @@ public class FirLightTreeJsBoxTestGenerated extends AbstractFirLightTreeJsBoxTes
|
|||||||
runTest("js/js.translator/testData/box/esModules/jsExport/perFileExportedApi.kt");
|
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
|
@Test
|
||||||
@TestMetadata("recursiveExport.kt")
|
@TestMetadata("recursiveExport.kt")
|
||||||
public void testRecursiveExport() {
|
public void testRecursiveExport() {
|
||||||
|
|||||||
+6
@@ -2517,6 +2517,12 @@ public class FirPsiJsBoxTestGenerated extends AbstractFirPsiJsBoxTest {
|
|||||||
runTest("js/js.translator/testData/box/esModules/jsExport/perFileExportedApi.kt");
|
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
|
@Test
|
||||||
@TestMetadata("recursiveExport.kt")
|
@TestMetadata("recursiveExport.kt")
|
||||||
public void testRecursiveExport() {
|
public void testRecursiveExport() {
|
||||||
|
|||||||
+6
@@ -2623,6 +2623,12 @@ public class IrBoxJsES6TestGenerated extends AbstractIrBoxJsES6Test {
|
|||||||
runTest("js/js.translator/testData/box/esModules/jsExport/perFileExportedApi.kt");
|
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
|
@Test
|
||||||
@TestMetadata("recursiveExport.kt")
|
@TestMetadata("recursiveExport.kt")
|
||||||
public void testRecursiveExport() {
|
public void testRecursiveExport() {
|
||||||
|
|||||||
+6
@@ -2517,6 +2517,12 @@ public class IrBoxJsTestGenerated extends AbstractIrBoxJsTest {
|
|||||||
runTest("js/js.translator/testData/box/esModules/jsExport/perFileExportedApi.kt");
|
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
|
@Test
|
||||||
@TestMetadata("recursiveExport.kt")
|
@TestMetadata("recursiveExport.kt")
|
||||||
public void testRecursiveExport() {
|
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