[JS IR] Add test with chain export--not-export--export
^KT-44616 fixed
This commit is contained in:
Generated
+5
@@ -1632,6 +1632,11 @@ public class IrBoxJsES6TestGenerated extends AbstractIrBoxJsES6Test {
|
|||||||
runTest("js/js.translator/testData/box/export/nonIndetifierModuleName.kt");
|
runTest("js/js.translator/testData/box/export/nonIndetifierModuleName.kt");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@TestMetadata("overriddenChainNonExportIntermediate.kt")
|
||||||
|
public void testOverriddenChainNonExportIntermediate() throws Exception {
|
||||||
|
runTest("js/js.translator/testData/box/export/overriddenChainNonExportIntermediate.kt");
|
||||||
|
}
|
||||||
|
|
||||||
@TestMetadata("overriddenExternalMethodWithSameNameMethod.kt")
|
@TestMetadata("overriddenExternalMethodWithSameNameMethod.kt")
|
||||||
public void testOverriddenExternalMethodWithSameNameMethod() throws Exception {
|
public void testOverriddenExternalMethodWithSameNameMethod() throws Exception {
|
||||||
runTest("js/js.translator/testData/box/export/overriddenExternalMethodWithSameNameMethod.kt");
|
runTest("js/js.translator/testData/box/export/overriddenExternalMethodWithSameNameMethod.kt");
|
||||||
|
|||||||
+5
@@ -1632,6 +1632,11 @@ public class IrBoxJsTestGenerated extends AbstractIrBoxJsTest {
|
|||||||
runTest("js/js.translator/testData/box/export/nonIndetifierModuleName.kt");
|
runTest("js/js.translator/testData/box/export/nonIndetifierModuleName.kt");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@TestMetadata("overriddenChainNonExportIntermediate.kt")
|
||||||
|
public void testOverriddenChainNonExportIntermediate() throws Exception {
|
||||||
|
runTest("js/js.translator/testData/box/export/overriddenChainNonExportIntermediate.kt");
|
||||||
|
}
|
||||||
|
|
||||||
@TestMetadata("overriddenExternalMethodWithSameNameMethod.kt")
|
@TestMetadata("overriddenExternalMethodWithSameNameMethod.kt")
|
||||||
public void testOverriddenExternalMethodWithSameNameMethod() throws Exception {
|
public void testOverriddenExternalMethodWithSameNameMethod() throws Exception {
|
||||||
runTest("js/js.translator/testData/box/export/overriddenExternalMethodWithSameNameMethod.kt");
|
runTest("js/js.translator/testData/box/export/overriddenExternalMethodWithSameNameMethod.kt");
|
||||||
|
|||||||
+5
@@ -1637,6 +1637,11 @@ public class BoxJsTestGenerated extends AbstractBoxJsTest {
|
|||||||
runTest("js/js.translator/testData/box/export/nonIndetifierModuleName.kt");
|
runTest("js/js.translator/testData/box/export/nonIndetifierModuleName.kt");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@TestMetadata("overriddenChainNonExportIntermediate.kt")
|
||||||
|
public void testOverriddenChainNonExportIntermediate() throws Exception {
|
||||||
|
runTest("js/js.translator/testData/box/export/overriddenChainNonExportIntermediate.kt");
|
||||||
|
}
|
||||||
|
|
||||||
@TestMetadata("overriddenExternalMethodWithSameNameMethod.kt")
|
@TestMetadata("overriddenExternalMethodWithSameNameMethod.kt")
|
||||||
public void testOverriddenExternalMethodWithSameNameMethod() throws Exception {
|
public void testOverriddenExternalMethodWithSameNameMethod() throws Exception {
|
||||||
runTest("js/js.translator/testData/box/export/overriddenExternalMethodWithSameNameMethod.kt");
|
runTest("js/js.translator/testData/box/export/overriddenExternalMethodWithSameNameMethod.kt");
|
||||||
|
|||||||
@@ -0,0 +1,38 @@
|
|||||||
|
// IGNORE_BACKEND: JS
|
||||||
|
// RUN_PLAIN_BOX_FUNCTION
|
||||||
|
// INFER_MAIN_MODULE
|
||||||
|
|
||||||
|
// MODULE: overriden-chain-non-export-intermediate
|
||||||
|
// FILE: lib.kt
|
||||||
|
@JsExport
|
||||||
|
abstract class A {
|
||||||
|
abstract fun foo(): String
|
||||||
|
|
||||||
|
abstract fun bar(): String
|
||||||
|
}
|
||||||
|
|
||||||
|
abstract class B : A() {
|
||||||
|
abstract fun baz(): String
|
||||||
|
|
||||||
|
override fun foo(): String = "foo"
|
||||||
|
}
|
||||||
|
|
||||||
|
@JsExport
|
||||||
|
class C : B() {
|
||||||
|
override fun bar(): String = "bar"
|
||||||
|
override fun baz(): String = "baz"
|
||||||
|
|
||||||
|
fun bay(): String = "bay"
|
||||||
|
}
|
||||||
|
|
||||||
|
// FILE: test.js
|
||||||
|
|
||||||
|
function box() {
|
||||||
|
return test(new this["overriden-chain-non-export-intermediate"].C());
|
||||||
|
}
|
||||||
|
|
||||||
|
function test(c) {
|
||||||
|
if (c.foo() === "foo" && c.bar() === "bar" && c.bay() == "bay") return "OK"
|
||||||
|
|
||||||
|
return "fail"
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user