[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
@@ -0,0 +1,29 @@
// DONT_TARGET_EXACT_BACKEND: JS JS_IR JS_IR_ES6 WASM NATIVE
// MODULE: lib
// FILE: C.java
interface A {
String getOk();
}
interface B {
String getOk();
}
interface C extends A, B {
}
// FILE: JavaClass.java
class JavaClass implements C {
public String getOk() { return "OK"; }
}
// MODULE: main(lib)
// FILE: 1.kt
fun box(): String {
return f(JavaClass())
}
internal fun f(c: C) = c.ok
@@ -0,0 +1,14 @@
// DONT_TARGET_EXACT_BACKEND: JS JS_IR JS_IR_ES6 WASM NATIVE
// MODULE: lib
// FILE: JavaClass.java
class JavaClass {
public String getOk() { return "OK"; }
}
// MODULE: main(lib)
// FILE: 1.kt
fun box(): String {
return JavaClass().ok
}
@@ -0,0 +1,27 @@
// DONT_TARGET_EXACT_BACKEND: JS JS_IR JS_IR_ES6 WASM NATIVE
// MODULE: lib
// FILE: JavaClass.java
class JavaClass {
private String myX;
public String getX() {
return myX;
}
public void setX(String x) {
myX = x;
}
}
// MODULE: main(lib)
// FILE: 1.kt
fun box(): String {
return JavaClass().doIt()
}
internal fun JavaClass.doIt(): String {
x = "OK"
return x
}
@@ -0,0 +1,23 @@
// DONT_TARGET_EXACT_BACKEND: JS JS_IR JS_IR_ES6 WASM NATIVE
// MODULE: lib
// FILE: JavaClass2.java
class JavaClass1 {
protected Object value = null;
public Object getSomething() { return null; }
public void setSomething(Object value) { this.value = value; }
}
class JavaClass2 extends JavaClass1 {
public String getSomething() { return (String)value; }
}
// MODULE: main(lib)
// FILE: 1.kt
fun box(): String {
val javaClass = JavaClass2()
javaClass.something = "OK"
return javaClass.something
}
@@ -0,0 +1,24 @@
// DONT_TARGET_EXACT_BACKEND: JS JS_IR JS_IR_ES6 WASM NATIVE
// MODULE: lib
// FILE: JavaClass.java
class JavaClass {
private int myX = 0;
public int getX() {
return myX;
}
public void setX(int x) {
myX = x;
}
}
// MODULE: main(lib)
// FILE: 1.kt
fun box(): String {
val javaClass = JavaClass()
javaClass.x++
return if (javaClass.x == 1) "OK" else "ERROR"
}
@@ -0,0 +1,22 @@
// DONT_TARGET_EXACT_BACKEND: JS JS_IR JS_IR_ES6 WASM NATIVE
// MODULE: lib
// FILE: JavaClass.java
public class JavaClass {
protected String getOk() { return "OK"; }
}
// MODULE: main(lib)
// FILE: 1.kt
package p
import JavaClass
fun box(): String {
return KotlinClass().ok()
}
class KotlinClass : JavaClass() {
fun ok() = ok
}
@@ -0,0 +1,29 @@
// DONT_TARGET_EXACT_BACKEND: JS JS_IR JS_IR_ES6 WASM NATIVE
// MODULE: lib
// FILE: JavaClass.java
public class JavaClass {
private String x = null;
public String getX() { return "OK"; }
protected void setX(String x) { this.x = x; }
}
// MODULE: main(lib)
// FILE: 1.kt
package p
import JavaClass
fun box(): String {
return KotlinClass().ok()
}
class KotlinClass : JavaClass() {
fun ok(): String {
x = "o"
x += "k"
return x
}
}
@@ -0,0 +1,24 @@
// DONT_TARGET_EXACT_BACKEND: JS JS_IR JS_IR_ES6 WASM NATIVE
// MODULE: lib
// FILE: JavaClass.java
class JavaClass {
private String myX;
public String getX() {
return myX;
}
public void setX(String x) {
myX = x;
}
}
// MODULE: main(lib)
// FILE: 1.kt
fun box(): String {
val javaClass = JavaClass()
javaClass.x = "OK"
return javaClass.x
}
@@ -0,0 +1,27 @@
// DONT_TARGET_EXACT_BACKEND: JS JS_IR JS_IR_ES6 WASM NATIVE
// MODULE: lib
// FILE: JavaClass.java
class JavaClass {
private String myX = "";
public String getX() {
return myX;
}
public JavaClass setX(String x) {
myX = x;
return this;
}
}
// MODULE: main(lib)
// FILE: 1.kt
fun box(): String {
val javaClass = JavaClass()
if (javaClass.x == "") {
javaClass.x = "OK"
}
return javaClass.x
}
@@ -0,0 +1,27 @@
// DONT_TARGET_EXACT_BACKEND: JS JS_IR JS_IR_ES6 WASM NATIVE
// MODULE: lib
// FILE: JavaClass.java
class JavaClass {
private String myX = "";
public String getX() {
return myX;
}
public double setX(String x) {
myX = x;
return 1.0;
}
}
// MODULE: main(lib)
// FILE: 1.kt
fun box(): String {
val javaClass = JavaClass()
if (javaClass.x == "") {
javaClass.x = "OK"
}
return javaClass.x
}