[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:
+54
@@ -0,0 +1,54 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: JS JS_IR JS_IR_ES6 WASM NATIVE
|
||||
// MODULE: lib
|
||||
// FILE: JavaClass.java
|
||||
|
||||
class JavaClass {
|
||||
void plusAssign(Runnable i) {
|
||||
i.run();
|
||||
}
|
||||
|
||||
void minusAssign(Runnable i) {
|
||||
i.run();
|
||||
}
|
||||
|
||||
void timesAssign(Runnable i) {
|
||||
i.run();
|
||||
}
|
||||
|
||||
void divAssign(Runnable i) {
|
||||
i.run();
|
||||
}
|
||||
|
||||
void remAssign(Runnable i) {
|
||||
i.run();
|
||||
}
|
||||
}
|
||||
|
||||
// MODULE: main(lib)
|
||||
// FILE: 1.kt
|
||||
|
||||
fun box(): String {
|
||||
val obj = JavaClass()
|
||||
|
||||
var v1 = "FAIL"
|
||||
obj += { v1 = "OK" }
|
||||
if (v1 != "OK") return "plus: $v1"
|
||||
|
||||
var v2 = "FAIL"
|
||||
obj -= { v2 = "OK" }
|
||||
if (v2 != "OK") return "minus: $v2"
|
||||
|
||||
var v3 = "FAIL"
|
||||
obj *= { v3 = "OK" }
|
||||
if (v3 != "OK") return "times: $v3"
|
||||
|
||||
var v4 = "FAIL"
|
||||
obj /= { v4 = "OK" }
|
||||
if (v4 != "OK") return "div: $v4"
|
||||
|
||||
var v5 = "FAIL"
|
||||
obj %= { v5 = "OK" }
|
||||
if (v5 != "OK") return "mod: $v5"
|
||||
|
||||
return "OK"
|
||||
}
|
||||
+61
@@ -0,0 +1,61 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: JS JS_IR JS_IR_ES6 WASM NATIVE
|
||||
// MODULE: lib
|
||||
// FILE: JavaClass.java
|
||||
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
class JavaClass {
|
||||
@NotNull JavaClass plus(Runnable i) {
|
||||
i.run();
|
||||
return this;
|
||||
}
|
||||
|
||||
@NotNull JavaClass minus(Runnable i) {
|
||||
i.run();
|
||||
return this;
|
||||
}
|
||||
|
||||
@NotNull JavaClass times(Runnable i) {
|
||||
i.run();
|
||||
return this;
|
||||
}
|
||||
|
||||
@NotNull JavaClass div(Runnable i) {
|
||||
i.run();
|
||||
return this;
|
||||
}
|
||||
|
||||
@NotNull JavaClass rem(Runnable i) {
|
||||
i.run();
|
||||
return this;
|
||||
}
|
||||
}
|
||||
|
||||
// MODULE: main(lib)
|
||||
// FILE: 1.kt
|
||||
|
||||
fun box(): String {
|
||||
var obj = JavaClass()
|
||||
|
||||
var v1 = "FAIL"
|
||||
obj += { v1 = "OK" }
|
||||
if (v1 != "OK") return "plus: $v1"
|
||||
|
||||
var v2 = "FAIL"
|
||||
obj -= { v2 = "OK" }
|
||||
if (v2 != "OK") return "minus: $v2"
|
||||
|
||||
var v3 = "FAIL"
|
||||
obj *= { v3 = "OK" }
|
||||
if (v3 != "OK") return "times: $v3"
|
||||
|
||||
var v4 = "FAIL"
|
||||
obj /= { v4 = "OK" }
|
||||
if (v4 != "OK") return "div: $v4"
|
||||
|
||||
var v5 = "FAIL"
|
||||
obj %= { v5 = "OK" }
|
||||
if (v5 != "OK") return "mod: $v5"
|
||||
|
||||
return "OK"
|
||||
}
|
||||
@@ -0,0 +1,68 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: JS JS_IR JS_IR_ES6 WASM NATIVE
|
||||
// MODULE: lib
|
||||
// FILE: JavaClass.java
|
||||
|
||||
class JavaClass {
|
||||
JavaClass plus(Runnable i) {
|
||||
i.run();
|
||||
return this;
|
||||
}
|
||||
|
||||
JavaClass minus(Runnable i) {
|
||||
i.run();
|
||||
return this;
|
||||
}
|
||||
|
||||
JavaClass times(Runnable i) {
|
||||
i.run();
|
||||
return this;
|
||||
}
|
||||
|
||||
JavaClass div(Runnable i) {
|
||||
i.run();
|
||||
return this;
|
||||
}
|
||||
|
||||
JavaClass rem(Runnable i) {
|
||||
i.run();
|
||||
return this;
|
||||
}
|
||||
|
||||
JavaClass rangeTo(Runnable i) {
|
||||
i.run();
|
||||
return this;
|
||||
}
|
||||
}
|
||||
|
||||
// MODULE: main(lib)
|
||||
// FILE: 1.kt
|
||||
|
||||
fun box(): String {
|
||||
val obj = JavaClass()
|
||||
|
||||
var v1 = "FAIL"
|
||||
obj + { v1 = "OK" }
|
||||
if (v1 != "OK") return "plus: $v1"
|
||||
|
||||
var v2 = "FAIL"
|
||||
obj - { v2 = "OK" }
|
||||
if (v2 != "OK") return "minus: $v2"
|
||||
|
||||
var v3 = "FAIL"
|
||||
obj * { v3 = "OK" }
|
||||
if (v3 != "OK") return "times: $v3"
|
||||
|
||||
var v4 = "FAIL"
|
||||
obj / { v4 = "OK" }
|
||||
if (v4 != "OK") return "div: $v4"
|
||||
|
||||
var v5 = "FAIL"
|
||||
obj % { v5 = "OK" }
|
||||
if (v5 != "OK") return "mod: $v5"
|
||||
|
||||
var v6 = "FAIL"
|
||||
obj .. { v6 = "OK" }
|
||||
if (v6 != "OK") return "rangeTo: $v6"
|
||||
|
||||
return "OK"
|
||||
}
|
||||
@@ -0,0 +1,35 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: JS JS_IR JS_IR_ES6 WASM NATIVE
|
||||
// MODULE: lib
|
||||
// FILE: JavaClass.java
|
||||
|
||||
class JavaClass {
|
||||
int compareTo(Runnable i) {
|
||||
i.run();
|
||||
return 239;
|
||||
}
|
||||
}
|
||||
|
||||
// MODULE: main(lib)
|
||||
// FILE: 1.kt
|
||||
|
||||
fun box(): String {
|
||||
val obj = JavaClass()
|
||||
|
||||
var v1 = "FAIL"
|
||||
obj < { v1 = "OK" }
|
||||
if (v1 != "OK") return "<: $v1"
|
||||
|
||||
var v2 = "FAIL"
|
||||
obj > { v2 = "OK" }
|
||||
if (v2 != "OK") return ">: $v2"
|
||||
|
||||
var v3 = "FAIL"
|
||||
obj <= { v3 = "OK" }
|
||||
if (v3 != "OK") return "<=: $v3"
|
||||
|
||||
var v4 = "FAIL"
|
||||
obj >= { v4 = "OK" }
|
||||
if (v4 != "OK") return ">=: $v4"
|
||||
|
||||
return "OK"
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: JS JS_IR JS_IR_ES6 WASM NATIVE
|
||||
// MODULE: lib
|
||||
// FILE: JavaClass.java
|
||||
|
||||
class JavaClass {
|
||||
boolean contains(Runnable i) {
|
||||
i.run();
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
// MODULE: main(lib)
|
||||
// FILE: 1.kt
|
||||
|
||||
fun box(): String {
|
||||
val obj = JavaClass()
|
||||
|
||||
var v = "FAIL"
|
||||
{ v = "O" } in obj
|
||||
{ v += "K" } !in obj
|
||||
return v
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: JS JS_IR JS_IR_ES6 WASM NATIVE
|
||||
// MODULE: lib
|
||||
// FILE: JavaClass.java
|
||||
|
||||
class JavaClass {
|
||||
int get(Runnable i) {
|
||||
i.run();
|
||||
return 239;
|
||||
}
|
||||
}
|
||||
|
||||
// MODULE: main(lib)
|
||||
// FILE: 1.kt
|
||||
|
||||
fun box(): String {
|
||||
val obj = JavaClass()
|
||||
|
||||
var v = "FAIL"
|
||||
obj[{ v = "OK" }]
|
||||
return v
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: JS JS_IR JS_IR_ES6 WASM NATIVE
|
||||
// MODULE: lib
|
||||
// FILE: JavaClass.java
|
||||
|
||||
class JavaClass {
|
||||
void invoke(Runnable i) {
|
||||
i.run();
|
||||
}
|
||||
}
|
||||
|
||||
// MODULE: main(lib)
|
||||
// FILE: 1.kt
|
||||
|
||||
fun box(): String {
|
||||
val obj = JavaClass()
|
||||
|
||||
var v = "FAIL"
|
||||
obj({ v = "O" })
|
||||
obj { v += "K" }
|
||||
return v
|
||||
}
|
||||
@@ -0,0 +1,49 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: JS JS_IR JS_IR_ES6 WASM NATIVE
|
||||
// !LANGUAGE: -ProhibitOperatorMod
|
||||
// IGNORE_BACKEND_FIR: JVM_IR
|
||||
// MODULE: lib
|
||||
// FILE: Java.java
|
||||
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
class AugmentedAssignmentPure {
|
||||
void modAssign(Runnable i) {
|
||||
i.run();
|
||||
}
|
||||
}
|
||||
|
||||
class AugmentedAssignmentViaSimpleBinary {
|
||||
@NotNull AugmentedAssignmentViaSimpleBinary rem(Runnable i) {
|
||||
i.run();
|
||||
return this;
|
||||
}
|
||||
}
|
||||
|
||||
class Binary {
|
||||
Binary rem(Runnable i) {
|
||||
i.run();
|
||||
return this;
|
||||
}
|
||||
}
|
||||
|
||||
// MODULE: main(lib)
|
||||
// FILE: 1.kt
|
||||
|
||||
fun box(): String {
|
||||
val augAssignmentPure = AugmentedAssignmentPure()
|
||||
var v1 = "FAIL"
|
||||
augAssignmentPure %= { v1 = "OK" }
|
||||
if (v1 != "OK") return "assignment pure: $v1"
|
||||
|
||||
var augmentedAssignmentViaSimpleBinary = AugmentedAssignmentViaSimpleBinary()
|
||||
var v2 = "FAIL"
|
||||
augmentedAssignmentViaSimpleBinary %= { v2 = "OK" }
|
||||
if (v2 != "OK") return "assignment via simple binary: $v2"
|
||||
|
||||
val binary = Binary()
|
||||
var v3 = "FAIL"
|
||||
binary % { v3 = "OK" }
|
||||
if (v3 != "OK") return "binary: $v3"
|
||||
|
||||
return "OK"
|
||||
}
|
||||
@@ -0,0 +1,34 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: JS JS_IR JS_IR_ES6 WASM NATIVE
|
||||
// MODULE: lib
|
||||
// FILE: JavaClass.java
|
||||
|
||||
class JavaClass {
|
||||
int get(Runnable i1, Runnable i2) {
|
||||
i1.run();
|
||||
i2.run();
|
||||
return 239;
|
||||
}
|
||||
|
||||
void set(Runnable i1, Runnable i2, Runnable value) {
|
||||
i1.run();
|
||||
i2.run();
|
||||
value.run();
|
||||
}
|
||||
}
|
||||
|
||||
// MODULE: main(lib)
|
||||
// FILE: 1.kt
|
||||
|
||||
fun box(): String {
|
||||
val obj = JavaClass()
|
||||
|
||||
var v1 = "FAIL"
|
||||
obj[{ v1 = "O" }, { v1 += "K" }]
|
||||
if (v1 != "OK") return "get: $v1"
|
||||
|
||||
var v2 = "FAIL"
|
||||
obj[{ v2 = "" }, { v2 += "O" }] = { v2 += "K" }
|
||||
if (v2 != "OK") return "set: $v2"
|
||||
|
||||
return "OK"
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: JS JS_IR JS_IR_ES6 WASM NATIVE
|
||||
// MODULE: lib
|
||||
// FILE: JavaClass.java
|
||||
|
||||
class JavaClass {
|
||||
void invoke(Runnable p1, Runnable p2) {
|
||||
p1.run();
|
||||
p2.run();
|
||||
}
|
||||
}
|
||||
|
||||
// MODULE: main(lib)
|
||||
// FILE: 1.kt
|
||||
|
||||
fun box(): String {
|
||||
val obj = JavaClass()
|
||||
|
||||
var v = "FAIL"
|
||||
obj({ v = "O" }, { v += "K" })
|
||||
return v
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: JS JS_IR JS_IR_ES6 WASM NATIVE
|
||||
// MODULE: lib
|
||||
// FILE: JavaClass.java
|
||||
|
||||
class JavaClass {
|
||||
void set(Runnable i, Runnable value) {
|
||||
i.run();
|
||||
value.run();
|
||||
}
|
||||
}
|
||||
|
||||
// MODULE: main(lib)
|
||||
// FILE: 1.kt
|
||||
|
||||
fun box(): String {
|
||||
val obj = JavaClass()
|
||||
|
||||
var v = "FAIL"
|
||||
obj[{ v = "O" }] = { v += "K" }
|
||||
return v
|
||||
}
|
||||
Reference in New Issue
Block a user