[Test] Properly merge box against java testdata into codegen/box

Previous commit about it was 3199ce03 and it was completely wrong
This commit is contained in:
Dmitriy Novozhilov
2021-02-04 10:43:33 +03:00
parent 21c493a854
commit 29b96aa15d
173 changed files with 120524 additions and 115185 deletions
+22
View File
@@ -0,0 +1,22 @@
// DONT_TARGET_EXACT_BACKEND: JS JS_IR JS_IR_ES6 WASM NATIVE
// MODULE: lib
// FILE: C.java
public enum C {
OK(0);
private final int ordinal;
C(int ordinal) { this.ordinal = ordinal; }
public int getOrdinal() { return ordinal; }
}
// MODULE: main(lib)
// FILE: 1.kt
fun box(): String {
val ok = C.OK
return when (ok) {
C.OK -> "OK"
else -> "fail"
}
}
+18
View File
@@ -0,0 +1,18 @@
// DONT_TARGET_EXACT_BACKEND: JS JS_IR JS_IR_ES6 WASM NATIVE
// MODULE: lib
// FILE: test/En.java
package test;
public enum En {
A;
}
// MODULE: main(lib)
// FILE: 1.kt
import test.*
fun box() =
if (En.A.toString() == "A") "OK"
else "fail"
@@ -0,0 +1,31 @@
// DONT_TARGET_EXACT_BACKEND: JS JS_IR JS_IR_ES6 WASM NATIVE
// MODULE: lib
// FILE: test/En.java
package test;
import java.lang.Override;
import java.lang.String;
public enum En {
A {
@Override
public String repr() {
return "A";
}
},
B;
public String repr() {
return "ololol" + toString();
}
}
// MODULE: main(lib)
// FILE: 1.kt
import test.En.*
fun box() =
if (A.repr() == "A" && B.repr() == "olololB") "OK"
else "fail"
@@ -0,0 +1,18 @@
// DONT_TARGET_EXACT_BACKEND: JS JS_IR JS_IR_ES6 WASM NATIVE
// MODULE: lib
// FILE: test/En.java
package test;
public enum En {
A;
}
// MODULE: main(lib)
// FILE: 1.kt
import test.En.A
fun box() =
if (A.toString() == "A") "OK"
else "fail"
@@ -0,0 +1,21 @@
// DONT_TARGET_EXACT_BACKEND: JS JS_IR JS_IR_ES6 WASM NATIVE
// MODULE: lib
// FILE: test/Foo.java
package test;
public class Foo {
public enum MyEnum {
A;
}
}
// MODULE: main(lib)
// FILE: 1.kt
import test.*
import test.Foo.MyEnum.A
fun box() =
if (Foo.MyEnum.A.toString() == "A" && A.toString() == "A") "OK"
else "fail"
+32
View File
@@ -0,0 +1,32 @@
// DONT_TARGET_EXACT_BACKEND: JS JS_IR JS_IR_ES6 WASM NATIVE
// MODULE: lib
// FILE: test/E.java
package test;
import java.util.Set;
import java.util.EnumSet;
public enum E {
INSTANCE;
public static int foo = 42;
public static final Set<E> INSTANCES = EnumSet.of(INSTANCE);
}
// MODULE: main(lib)
// FILE: 1.kt
import test.E
fun box(): String {
val instances = E.INSTANCES
if (E.foo != 42)
return "Wrong foo ${E.foo}"
if (instances.size != 1)
return "Wrong size ${instances.size}"
if (E.INSTANCES.iterator().next() != E.INSTANCE)
return "Wrong instance ${E.INSTANCES.iterator().next()}"
return "OK"
}
+18
View File
@@ -0,0 +1,18 @@
// DONT_TARGET_EXACT_BACKEND: JS JS_IR JS_IR_ES6 WASM NATIVE
// MODULE: lib
// FILE: test/En.java
package test;
public enum En {
ENTRY;
public static String foo() {
return "OK";
}
}
// MODULE: main(lib)
// FILE: 1.kt
fun box() = test.En.foo()