[Test] Merge box against java tests into codegen black box tests
This commit is contained in:
@@ -1,3 +1,4 @@
|
||||
// MODULE: lib
|
||||
// FILE: JavaClass.java
|
||||
|
||||
class JavaClass {
|
||||
@@ -20,6 +21,7 @@ class JavaClass {
|
||||
}
|
||||
}
|
||||
|
||||
// MODULE: main(lib)
|
||||
// FILE: 1.kt
|
||||
|
||||
fun box(): String? {
|
||||
|
||||
+2
@@ -1,3 +1,4 @@
|
||||
// MODULE: lib
|
||||
// FILE: JavaClass.java
|
||||
|
||||
// KT-5912
|
||||
@@ -18,6 +19,7 @@ class JavaClass<T> {
|
||||
}
|
||||
}
|
||||
|
||||
// MODULE: main(lib)
|
||||
// FILE: 1.kt
|
||||
|
||||
// KT-5912
|
||||
|
||||
@@ -1,9 +1,11 @@
|
||||
// MODULE: lib
|
||||
// FILE: JavaInterface.java
|
||||
|
||||
interface JavaInterface {
|
||||
void run(Runnable r);
|
||||
}
|
||||
|
||||
// MODULE: main(lib)
|
||||
// FILE: 1.kt
|
||||
|
||||
class Impl: JavaInterface {
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
// MODULE: lib
|
||||
// FILE: JavaClass.java
|
||||
|
||||
import java.util.*;
|
||||
@@ -8,6 +9,7 @@ class JavaClass {
|
||||
}
|
||||
}
|
||||
|
||||
// MODULE: main(lib)
|
||||
// FILE: 1.kt
|
||||
|
||||
import java.util.*
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
// MODULE: lib
|
||||
// FILE: JavaClass.java
|
||||
|
||||
class JavaClass {
|
||||
@@ -12,6 +13,7 @@ class JavaClass {
|
||||
}
|
||||
}
|
||||
|
||||
// MODULE: main(lib)
|
||||
// FILE: 1.kt
|
||||
|
||||
fun box(): String {
|
||||
|
||||
@@ -1,9 +1,11 @@
|
||||
// MODULE: lib
|
||||
// FILE: GenericInterface.java
|
||||
|
||||
interface GenericInterface<T> {
|
||||
public T foo(double d, int i, long j, short s);
|
||||
}
|
||||
|
||||
// MODULE: main(lib)
|
||||
// FILE: 1.kt
|
||||
|
||||
internal fun getInterface(): GenericInterface<String> {
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
// MODULE: lib
|
||||
// FILE: JavaClass.java
|
||||
|
||||
import java.io.*;
|
||||
@@ -8,6 +9,7 @@ class JavaClass {
|
||||
}
|
||||
}
|
||||
|
||||
// MODULE: main(lib)
|
||||
// FILE: 1.kt
|
||||
|
||||
import java.io.*
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
// MODULE: lib
|
||||
// FILE: JavaClass.java
|
||||
|
||||
import java.util.Arrays;
|
||||
@@ -9,6 +10,7 @@ class JavaClass {
|
||||
}
|
||||
}
|
||||
|
||||
// MODULE: main(lib)
|
||||
// FILE: 1.kt
|
||||
|
||||
fun box(): String {
|
||||
|
||||
@@ -1,10 +1,12 @@
|
||||
// WITH_RUNTIME
|
||||
// MODULE: lib
|
||||
// FILE: JavaInterface.java
|
||||
|
||||
interface JavaInterface {
|
||||
void foo(Runnable r);
|
||||
}
|
||||
|
||||
// MODULE: main(lib)
|
||||
// FILE: 1.kt
|
||||
|
||||
class Impl: JavaInterface {
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
// MODULE: lib
|
||||
// FILE: JavaClass.java
|
||||
|
||||
class JavaClass {
|
||||
@@ -6,6 +7,7 @@ class JavaClass {
|
||||
}
|
||||
}
|
||||
|
||||
// MODULE: main(lib)
|
||||
// FILE: 1.kt
|
||||
|
||||
internal class KotlinSubclass: JavaClass() {
|
||||
|
||||
+2
@@ -1,5 +1,6 @@
|
||||
// IGNORE_BACKEND_FIR: JVM_IR
|
||||
// WITH_RUNTIME
|
||||
// MODULE: lib
|
||||
// FILE: Super.java
|
||||
|
||||
class Super {
|
||||
@@ -21,6 +22,7 @@ class Sub extends Super {
|
||||
}
|
||||
}
|
||||
|
||||
// MODULE: main(lib)
|
||||
// FILE: 1.kt
|
||||
|
||||
fun box(): String {
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
// MODULE: lib
|
||||
// FILE: Sub.java
|
||||
|
||||
class Super {
|
||||
@@ -9,6 +10,7 @@ class Super {
|
||||
class Sub extends Super {
|
||||
}
|
||||
|
||||
// MODULE: main(lib)
|
||||
// FILE: 1.kt
|
||||
|
||||
fun box(): String {
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
// MODULE: lib
|
||||
// FILE: JavaClass.java
|
||||
|
||||
class JavaClass {
|
||||
@@ -12,6 +13,7 @@ class JavaClass {
|
||||
}
|
||||
}
|
||||
|
||||
// MODULE: main(lib)
|
||||
// FILE: 1.kt
|
||||
|
||||
var status: String = "fail" // global property to avoid issues with accessing closure from local class (KT-4174)
|
||||
|
||||
+2
@@ -1,3 +1,4 @@
|
||||
// MODULE: lib
|
||||
// FILE: JavaClass.java
|
||||
|
||||
class JavaClass {
|
||||
@@ -12,6 +13,7 @@ class JavaClass {
|
||||
}
|
||||
}
|
||||
|
||||
// MODULE: main(lib)
|
||||
// FILE: 1.kt
|
||||
|
||||
fun box(): String {
|
||||
|
||||
+2
@@ -1,3 +1,4 @@
|
||||
// MODULE: lib
|
||||
// FILE: JavaClass.java
|
||||
|
||||
class JavaClass {
|
||||
@@ -12,6 +13,7 @@ class JavaClass {
|
||||
}
|
||||
}
|
||||
|
||||
// MODULE: main(lib)
|
||||
// FILE: 1.kt
|
||||
|
||||
fun box(): String {
|
||||
|
||||
+2
@@ -1,3 +1,4 @@
|
||||
// MODULE: lib
|
||||
// FILE: JavaClass.java
|
||||
|
||||
class JavaClass {
|
||||
@@ -7,6 +8,7 @@ class JavaClass {
|
||||
}
|
||||
}
|
||||
|
||||
// MODULE: main(lib)
|
||||
// FILE: 1.kt
|
||||
|
||||
fun box(): String {
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
// MODULE: lib
|
||||
// FILE: JavaClass.java
|
||||
|
||||
import java.util.*;
|
||||
@@ -8,6 +9,7 @@ class JavaClass {
|
||||
}
|
||||
}
|
||||
|
||||
// MODULE: main(lib)
|
||||
// FILE: 1.kt
|
||||
|
||||
import java.util.*
|
||||
|
||||
+2
@@ -1,3 +1,4 @@
|
||||
// MODULE: lib
|
||||
// FILE: JavaClass.java
|
||||
|
||||
class JavaClass {
|
||||
@@ -12,6 +13,7 @@ class JavaClass {
|
||||
}
|
||||
}
|
||||
|
||||
// MODULE: main(lib)
|
||||
// FILE: 1.kt
|
||||
|
||||
fun box(): String {
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
// MODULE: lib
|
||||
// FILE: JavaClass.java
|
||||
|
||||
class JavaClass {
|
||||
@@ -6,6 +7,7 @@ class JavaClass {
|
||||
}
|
||||
}
|
||||
|
||||
// MODULE: main(lib)
|
||||
// FILE: 1.kt
|
||||
|
||||
fun box(): String {
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
// MODULE: lib
|
||||
// FILE: JavaClass.java
|
||||
|
||||
class JavaClass {
|
||||
@@ -6,6 +7,7 @@ class JavaClass {
|
||||
}
|
||||
}
|
||||
|
||||
// MODULE: main(lib)
|
||||
// FILE: 1.kt
|
||||
|
||||
fun box(): String {
|
||||
|
||||
+2
@@ -1,3 +1,4 @@
|
||||
// MODULE: lib
|
||||
// FILE: JavaClass.java
|
||||
|
||||
class JavaClass {
|
||||
@@ -22,6 +23,7 @@ class JavaClass {
|
||||
}
|
||||
}
|
||||
|
||||
// MODULE: main(lib)
|
||||
// FILE: 1.kt
|
||||
|
||||
fun box(): String {
|
||||
|
||||
+2
@@ -1,3 +1,4 @@
|
||||
// MODULE: lib
|
||||
// FILE: JavaClass.java
|
||||
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
@@ -29,6 +30,7 @@ class JavaClass {
|
||||
}
|
||||
}
|
||||
|
||||
// MODULE: main(lib)
|
||||
// FILE: 1.kt
|
||||
|
||||
fun box(): String {
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
// MODULE: lib
|
||||
// FILE: JavaClass.java
|
||||
|
||||
class JavaClass {
|
||||
@@ -32,6 +33,7 @@ class JavaClass {
|
||||
}
|
||||
}
|
||||
|
||||
// MODULE: main(lib)
|
||||
// FILE: 1.kt
|
||||
|
||||
fun box(): String {
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
// MODULE: lib
|
||||
// FILE: JavaClass.java
|
||||
|
||||
class JavaClass {
|
||||
@@ -7,6 +8,7 @@ class JavaClass {
|
||||
}
|
||||
}
|
||||
|
||||
// MODULE: main(lib)
|
||||
// FILE: 1.kt
|
||||
|
||||
fun box(): String {
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
// MODULE: lib
|
||||
// FILE: JavaClass.java
|
||||
|
||||
class JavaClass {
|
||||
@@ -7,6 +8,7 @@ class JavaClass {
|
||||
}
|
||||
}
|
||||
|
||||
// MODULE: main(lib)
|
||||
// FILE: 1.kt
|
||||
|
||||
fun box(): String {
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
// MODULE: lib
|
||||
// FILE: JavaClass.java
|
||||
|
||||
class JavaClass {
|
||||
@@ -7,6 +8,7 @@ class JavaClass {
|
||||
}
|
||||
}
|
||||
|
||||
// MODULE: main(lib)
|
||||
// FILE: 1.kt
|
||||
|
||||
fun box(): String {
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
// MODULE: lib
|
||||
// FILE: JavaClass.java
|
||||
|
||||
class JavaClass {
|
||||
@@ -6,6 +7,7 @@ class JavaClass {
|
||||
}
|
||||
}
|
||||
|
||||
// MODULE: main(lib)
|
||||
// FILE: 1.kt
|
||||
|
||||
fun box(): String {
|
||||
|
||||
+3
-1
@@ -1,5 +1,6 @@
|
||||
// !LANGUAGE: -ProhibitOperatorMod
|
||||
// IGNORE_BACKEND_FIR: JVM_IR
|
||||
// MODULE: lib
|
||||
// FILE: Java.java
|
||||
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
@@ -24,6 +25,7 @@ class Binary {
|
||||
}
|
||||
}
|
||||
|
||||
// MODULE: main(lib)
|
||||
// FILE: 1.kt
|
||||
|
||||
fun box(): String {
|
||||
@@ -43,4 +45,4 @@ fun box(): String {
|
||||
if (v3 != "OK") return "binary: $v3"
|
||||
|
||||
return "OK"
|
||||
}
|
||||
}
|
||||
|
||||
+2
@@ -1,3 +1,4 @@
|
||||
// MODULE: lib
|
||||
// FILE: JavaClass.java
|
||||
|
||||
class JavaClass {
|
||||
@@ -14,6 +15,7 @@ class JavaClass {
|
||||
}
|
||||
}
|
||||
|
||||
// MODULE: main(lib)
|
||||
// FILE: 1.kt
|
||||
|
||||
fun box(): String {
|
||||
|
||||
+2
@@ -1,3 +1,4 @@
|
||||
// MODULE: lib
|
||||
// FILE: JavaClass.java
|
||||
|
||||
class JavaClass {
|
||||
@@ -7,6 +8,7 @@ class JavaClass {
|
||||
}
|
||||
}
|
||||
|
||||
// MODULE: main(lib)
|
||||
// FILE: 1.kt
|
||||
|
||||
fun box(): String {
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
// MODULE: lib
|
||||
// FILE: JavaClass.java
|
||||
|
||||
class JavaClass {
|
||||
@@ -7,6 +8,7 @@ class JavaClass {
|
||||
}
|
||||
}
|
||||
|
||||
// MODULE: main(lib)
|
||||
// FILE: 1.kt
|
||||
|
||||
fun box(): String {
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
// MODULE: lib
|
||||
// FILE: JavaClass.java
|
||||
|
||||
class JavaClass<T> {
|
||||
@@ -6,6 +7,7 @@ class JavaClass<T> {
|
||||
}
|
||||
}
|
||||
|
||||
// MODULE: main(lib)
|
||||
// FILE: 1.kt
|
||||
|
||||
internal class KotlinClass : JavaClass<String>() {
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
// MODULE: lib
|
||||
// FILE: JavaClass.java
|
||||
|
||||
import java.util.*;
|
||||
@@ -10,6 +11,7 @@ class JavaClass {
|
||||
}
|
||||
}
|
||||
|
||||
// MODULE: main(lib)
|
||||
// FILE: 1.kt
|
||||
|
||||
fun box(): String {
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
// MODULE: lib
|
||||
// FILE: JavaClass.java
|
||||
|
||||
class JavaClass {
|
||||
@@ -6,6 +7,7 @@ class JavaClass {
|
||||
}
|
||||
}
|
||||
|
||||
// MODULE: main(lib)
|
||||
// FILE: 1.kt
|
||||
|
||||
fun box(): String {
|
||||
|
||||
+10
-8
@@ -1,10 +1,4 @@
|
||||
// FILE: test.kt
|
||||
class Test : Base {
|
||||
constructor(f: () -> String) : super(f)
|
||||
}
|
||||
|
||||
fun box() = Test({ "OK" }).get()
|
||||
|
||||
// MODULE: lib
|
||||
// FILE: Supplier.java
|
||||
public interface Supplier<T> {
|
||||
T get();
|
||||
@@ -21,4 +15,12 @@ public class Base {
|
||||
public String get() {
|
||||
return supplier.get();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// MODULE: main(lib)
|
||||
// FILE: test.kt
|
||||
class Test : Base {
|
||||
constructor(f: () -> String) : super(f)
|
||||
}
|
||||
|
||||
fun box() = Test({ "OK" }).get()
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
// MODULE: lib
|
||||
// FILE: JavaClass.java
|
||||
|
||||
class JavaClass {
|
||||
@@ -6,6 +7,7 @@ class JavaClass {
|
||||
}
|
||||
}
|
||||
|
||||
// MODULE: main(lib)
|
||||
// FILE: 1.kt
|
||||
|
||||
internal class KotlinClass(): JavaClass(null) {
|
||||
|
||||
+2
@@ -1,3 +1,4 @@
|
||||
// MODULE: lib
|
||||
// FILE: JavaClass.java
|
||||
|
||||
class JavaClass {
|
||||
@@ -6,6 +7,7 @@ class JavaClass {
|
||||
}
|
||||
}
|
||||
|
||||
// MODULE: main(lib)
|
||||
// FILE: 1.kt
|
||||
|
||||
var status: String = "fail" // global property to avoid issues with accessing closure from local class (KT-4174)
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
// MODULE: lib
|
||||
// FILE: WeirdComparator.java
|
||||
|
||||
import java.util.*;
|
||||
@@ -8,6 +9,7 @@ class WeirdComparator<T> {
|
||||
}
|
||||
}
|
||||
|
||||
// MODULE: main(lib)
|
||||
// FILE: 1.kt
|
||||
|
||||
fun box(): String {
|
||||
|
||||
+2
@@ -1,3 +1,4 @@
|
||||
// MODULE: lib
|
||||
// FILE: WeirdComparator.java
|
||||
|
||||
import java.util.*;
|
||||
@@ -12,6 +13,7 @@ class WeirdComparator {
|
||||
}
|
||||
}
|
||||
|
||||
// MODULE: main(lib)
|
||||
// FILE: 1.kt
|
||||
|
||||
fun box(): String {
|
||||
|
||||
+2
@@ -1,3 +1,4 @@
|
||||
// MODULE: lib
|
||||
// FILE: WeirdComparator.java
|
||||
|
||||
import java.util.*;
|
||||
@@ -14,6 +15,7 @@ class WeirdComparator<T> {
|
||||
}
|
||||
}
|
||||
|
||||
// MODULE: main(lib)
|
||||
// FILE: 1.kt
|
||||
|
||||
fun box(): String {
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
// WITH_RUNTIME
|
||||
// MODULE: lib
|
||||
// FILE: Custom.java
|
||||
|
||||
class Custom {
|
||||
@@ -7,6 +8,7 @@ class Custom {
|
||||
}
|
||||
}
|
||||
|
||||
// MODULE: main(lib)
|
||||
// FILE: 1.kt
|
||||
|
||||
fun box(): String {
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
// IGNORE_BACKEND_FIR: JVM_IR
|
||||
// SKIP_JDK6
|
||||
// MODULE: lib
|
||||
// FILE: Custom.java
|
||||
|
||||
class Custom<K, V> {
|
||||
@@ -21,6 +22,7 @@ class Custom<K, V> {
|
||||
}
|
||||
}
|
||||
|
||||
// MODULE: main(lib)
|
||||
// FILE: 1.kt
|
||||
|
||||
import java.util.Arrays
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
// SKIP_JDK6
|
||||
// MODULE: lib
|
||||
// FILE: Custom.java
|
||||
|
||||
class Custom<K, V> {
|
||||
@@ -20,6 +21,7 @@ class Custom<K, V> {
|
||||
}
|
||||
}
|
||||
|
||||
// MODULE: main(lib)
|
||||
// FILE: 1.kt
|
||||
|
||||
import java.util.Arrays
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
// IGNORE_BACKEND_FIR: JVM_IR
|
||||
// WITH_RUNTIME
|
||||
// MODULE: lib
|
||||
// FILE: Promise.java
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
@@ -12,6 +13,7 @@ public abstract class Promise<T> {
|
||||
public abstract Promise<T> done(@NotNull Consumer<? super T> done);
|
||||
}
|
||||
|
||||
// MODULE: main(lib)
|
||||
// FILE: 1.kt
|
||||
class User {
|
||||
fun use(promise: Promise<*>): Promise<*> {
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
// MODULE: lib
|
||||
// FILE: Base.java
|
||||
|
||||
interface Base<T> {
|
||||
@@ -9,6 +10,7 @@ interface Base<T> {
|
||||
interface Derived extends Base<String> {
|
||||
}
|
||||
|
||||
// MODULE: main(lib)
|
||||
// FILE: 1.kt
|
||||
|
||||
fun box(): String {
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
// MODULE: lib
|
||||
// FILE: ParamBase.java
|
||||
|
||||
class ParamBase<T> {}
|
||||
@@ -13,6 +14,7 @@ interface FBase<T> {
|
||||
void call(T t);
|
||||
}
|
||||
|
||||
// MODULE: main(lib)
|
||||
// FILE: 1.kt
|
||||
|
||||
fun box(): String {
|
||||
|
||||
@@ -1,9 +1,11 @@
|
||||
// MODULE: lib
|
||||
// FILE: Base.java
|
||||
|
||||
interface Interface {
|
||||
String call(String t);
|
||||
}
|
||||
|
||||
// MODULE: main(lib)
|
||||
// FILE: 1.kt
|
||||
|
||||
val String.property: String
|
||||
|
||||
+2
@@ -1,5 +1,6 @@
|
||||
// SKIP_JDK6
|
||||
// WITH_RUNTIME
|
||||
// MODULE: lib
|
||||
// FILE: JavaClass.java
|
||||
|
||||
class JavaClass {
|
||||
@@ -12,6 +13,7 @@ class JavaClass {
|
||||
}
|
||||
}
|
||||
|
||||
// MODULE: main(lib)
|
||||
// FILE: 1.kt
|
||||
|
||||
import java.util.Arrays
|
||||
|
||||
@@ -1,14 +1,4 @@
|
||||
// FILE: test.kt
|
||||
fun test(a: Any) {
|
||||
a as (String) -> String
|
||||
J.use(a)
|
||||
}
|
||||
|
||||
fun box(): String {
|
||||
test({s: String? -> s})
|
||||
return "OK"
|
||||
}
|
||||
|
||||
// MODULE: lib
|
||||
// FILE: JFoo.java
|
||||
public interface JFoo<T> {
|
||||
T foo(T x);
|
||||
@@ -20,3 +10,16 @@ public class J {
|
||||
jfoo.foo(null);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// MODULE: main(lib)
|
||||
// FILE: test.kt
|
||||
fun test(a: Any) {
|
||||
a as (String) -> String
|
||||
J.use(a)
|
||||
}
|
||||
|
||||
fun box(): String {
|
||||
test({s: String? -> s})
|
||||
return "OK"
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user