diff --git a/compiler/testData/codegen/boxWithStdlib/reflection/functions/localFunctionName.kt b/compiler/testData/codegen/box/callableReference/function/local/localFunctionName.kt similarity index 100% rename from compiler/testData/codegen/boxWithStdlib/reflection/functions/localFunctionName.kt rename to compiler/testData/codegen/box/callableReference/function/local/localFunctionName.kt diff --git a/compiler/testData/codegen/box/delegatedProperty/useReflectionOnKProperty.kt b/compiler/testData/codegen/box/delegatedProperty/useReflectionOnKProperty.kt index 19b6f5cea08..96784a814db 100644 --- a/compiler/testData/codegen/box/delegatedProperty/useReflectionOnKProperty.kt +++ b/compiler/testData/codegen/box/delegatedProperty/useReflectionOnKProperty.kt @@ -1,3 +1,5 @@ +// WITH_REFLECT + import kotlin.reflect.KProperty class Delegate { diff --git a/compiler/testData/codegen/boxAgainstJava/annotations/kClassMapping/arrayClassParameter.kt b/compiler/testData/codegen/boxAgainstJava/annotations/kClassMapping/arrayClassParameter.kt index 9093b69cd6f..62e45e9bc66 100644 --- a/compiler/testData/codegen/boxAgainstJava/annotations/kClassMapping/arrayClassParameter.kt +++ b/compiler/testData/codegen/boxAgainstJava/annotations/kClassMapping/arrayClassParameter.kt @@ -17,7 +17,7 @@ class K fun box(): String { val args = MyClass::class.java.getAnnotation(JavaAnn::class.java).args - val argName1 = args[0].simpleName ?: "fail 1" - val argName2 = args[1].simpleName ?: "fail 2" + val argName1 = args[0].java.simpleName ?: "fail 1" + val argName2 = args[1].java.simpleName ?: "fail 2" return argName1 + argName2 } diff --git a/compiler/testData/codegen/boxAgainstJava/annotations/kClassMapping/arrayClassParameterOnJavaClass.kt b/compiler/testData/codegen/boxAgainstJava/annotations/kClassMapping/arrayClassParameterOnJavaClass.kt index 3b4c2a6b4b4..8aac07508dc 100644 --- a/compiler/testData/codegen/boxAgainstJava/annotations/kClassMapping/arrayClassParameterOnJavaClass.kt +++ b/compiler/testData/codegen/boxAgainstJava/annotations/kClassMapping/arrayClassParameterOnJavaClass.kt @@ -20,7 +20,7 @@ class MyJavaClass {} fun box(): String { val args = MyJavaClass::class.java.getAnnotation(JavaAnn::class.java).args - val argName1 = args[0].simpleName ?: "fail 1" - val argName2 = args[1].simpleName ?: "fail 2" + val argName1 = args[0].java.simpleName ?: "fail 1" + val argName2 = args[1].java.simpleName ?: "fail 2" return argName1 + argName2 } diff --git a/compiler/testData/codegen/boxAgainstJava/annotations/kClassMapping/classParameter.kt b/compiler/testData/codegen/boxAgainstJava/annotations/kClassMapping/classParameter.kt index d5abeebc511..d57bbb3e9cf 100644 --- a/compiler/testData/codegen/boxAgainstJava/annotations/kClassMapping/classParameter.kt +++ b/compiler/testData/codegen/boxAgainstJava/annotations/kClassMapping/classParameter.kt @@ -17,5 +17,5 @@ class OK fun box(): String { val ann = MyClass::class.java.getAnnotation(JavaAnn::class.java) if (ann == null) return "fail: cannot find JavaAnn on MyClass" - return ann.value.simpleName!! + return ann.value.java.simpleName!! } diff --git a/compiler/testData/codegen/boxAgainstJava/annotations/kClassMapping/classParameterOnJavaClass.kt b/compiler/testData/codegen/boxAgainstJava/annotations/kClassMapping/classParameterOnJavaClass.kt index 23b33742207..f5faca635bd 100644 --- a/compiler/testData/codegen/boxAgainstJava/annotations/kClassMapping/classParameterOnJavaClass.kt +++ b/compiler/testData/codegen/boxAgainstJava/annotations/kClassMapping/classParameterOnJavaClass.kt @@ -20,5 +20,5 @@ class MyJavaClass {} fun box(): String { val ann = MyJavaClass::class.java.getAnnotation(JavaAnn::class.java) if (ann == null) return "fail: cannot find JavaAnn on MyClass" - return ann.value.simpleName!! + return ann.value.java.simpleName!! } diff --git a/compiler/testData/codegen/boxAgainstJava/annotations/kClassMapping/varargClassParameter.kt b/compiler/testData/codegen/boxAgainstJava/annotations/kClassMapping/varargClassParameter.kt index b26ed81201b..5d64b4a4303 100644 --- a/compiler/testData/codegen/boxAgainstJava/annotations/kClassMapping/varargClassParameter.kt +++ b/compiler/testData/codegen/boxAgainstJava/annotations/kClassMapping/varargClassParameter.kt @@ -17,7 +17,7 @@ class K fun box(): String { val args = MyClass::class.java.getAnnotation(JavaAnn::class.java).value - val argName1 = args[0].simpleName ?: "fail 1" - val argName2 = args[1].simpleName ?: "fail 2" + val argName1 = args[0].java.simpleName ?: "fail 1" + val argName2 = args[1].java.simpleName ?: "fail 2" return argName1 + argName2 } diff --git a/compiler/testData/codegen/boxAgainstJava/annotations/kClassMapping/varargClassParameterOnJavaClass.kt b/compiler/testData/codegen/boxAgainstJava/annotations/kClassMapping/varargClassParameterOnJavaClass.kt index 0e8abfcdb72..e61c25aba8d 100644 --- a/compiler/testData/codegen/boxAgainstJava/annotations/kClassMapping/varargClassParameterOnJavaClass.kt +++ b/compiler/testData/codegen/boxAgainstJava/annotations/kClassMapping/varargClassParameterOnJavaClass.kt @@ -23,7 +23,7 @@ class K fun box(): String { val args = MyJavaClass::class.java.getAnnotation(JavaAnn::class.java).value - val argName1 = args[0].simpleName ?: "fail 1" - val argName2 = args[1].simpleName ?: "fail 2" + val argName1 = args[0].java.simpleName ?: "fail 1" + val argName2 = args[1].java.simpleName ?: "fail 2" return argName1 + argName2 } diff --git a/compiler/testData/codegen/boxAgainstJava/reflection/classLiterals/javaClassLiteral.kt b/compiler/testData/codegen/boxAgainstJava/reflection/classLiterals/javaClassLiteral.kt index ab0a844ab03..283af7f8ce5 100644 --- a/compiler/testData/codegen/boxAgainstJava/reflection/classLiterals/javaClassLiteral.kt +++ b/compiler/testData/codegen/boxAgainstJava/reflection/classLiterals/javaClassLiteral.kt @@ -1,3 +1,4 @@ +// WITH_REFLECT // FILE: J.java public class J { diff --git a/compiler/testData/codegen/boxAgainstJava/reflection/mapping/javaConstructor.kt b/compiler/testData/codegen/boxAgainstJava/reflection/mapping/javaConstructor.kt index 46e3a2e46e0..ac7213fdb7e 100644 --- a/compiler/testData/codegen/boxAgainstJava/reflection/mapping/javaConstructor.kt +++ b/compiler/testData/codegen/boxAgainstJava/reflection/mapping/javaConstructor.kt @@ -1,3 +1,4 @@ +// WITH_REFLECT // FILE: J.java public class J { diff --git a/compiler/testData/codegen/boxAgainstJava/reflection/mapping/javaFields.kt b/compiler/testData/codegen/boxAgainstJava/reflection/mapping/javaFields.kt index d199d771f33..58fa5f1f661 100644 --- a/compiler/testData/codegen/boxAgainstJava/reflection/mapping/javaFields.kt +++ b/compiler/testData/codegen/boxAgainstJava/reflection/mapping/javaFields.kt @@ -1,3 +1,5 @@ +// WITH_REFLECT +// FULL_JDK // FILE: J.java public class J { @@ -11,7 +13,6 @@ public class J { } // FILE: 1.kt -// FULL_JDK import java.lang.reflect.* import kotlin.reflect.* diff --git a/compiler/testData/codegen/boxAgainstJava/reflection/mapping/javaMethods.kt b/compiler/testData/codegen/boxAgainstJava/reflection/mapping/javaMethods.kt index 6ddce141287..c86dfe3cdd9 100644 --- a/compiler/testData/codegen/boxAgainstJava/reflection/mapping/javaMethods.kt +++ b/compiler/testData/codegen/boxAgainstJava/reflection/mapping/javaMethods.kt @@ -1,3 +1,4 @@ +// WITH_REFLECT // FILE: J.java public class J { diff --git a/compiler/testData/codegen/boxAgainstJava/reflection/properties/equalsHashCodeToString.kt b/compiler/testData/codegen/boxAgainstJava/reflection/properties/equalsHashCodeToString.kt index edcb01036f0..d3edbc773f3 100644 --- a/compiler/testData/codegen/boxAgainstJava/reflection/properties/equalsHashCodeToString.kt +++ b/compiler/testData/codegen/boxAgainstJava/reflection/properties/equalsHashCodeToString.kt @@ -1,3 +1,4 @@ +// WITH_REFLECT // FILE: test/J.java package test; diff --git a/compiler/testData/codegen/boxInline/smap/inlineOnly/reified.kt b/compiler/testData/codegen/boxInline/smap/inlineOnly/reified.kt index c9fca44a996..f25f2f74ff5 100644 --- a/compiler/testData/codegen/boxInline/smap/inlineOnly/reified.kt +++ b/compiler/testData/codegen/boxInline/smap/inlineOnly/reified.kt @@ -2,7 +2,7 @@ package test -inline fun className() = T::class.simpleName +inline fun className() = T::class.java.simpleName // FILE: 2.kt diff --git a/compiler/testData/codegen/boxWithJava/reflection/javaMethodsSmokeTest.kt b/compiler/testData/codegen/boxWithJava/reflection/javaMethodsSmokeTest.kt index 0ecb2875573..6209521c995 100644 --- a/compiler/testData/codegen/boxWithJava/reflection/javaMethodsSmokeTest.kt +++ b/compiler/testData/codegen/boxWithJava/reflection/javaMethodsSmokeTest.kt @@ -1,3 +1,4 @@ +// WITH_REFLECT // FILE: J.java import java.util.List; diff --git a/compiler/testData/codegen/boxWithStdlib/reflection/properties/propertyOfNestedClassAndArrayType.kt b/compiler/testData/codegen/boxWithStdlib/reflection/properties/propertyOfNestedClassAndArrayType.kt index f35052f3eb0..8d4bc7a3181 100644 --- a/compiler/testData/codegen/boxWithStdlib/reflection/properties/propertyOfNestedClassAndArrayType.kt +++ b/compiler/testData/codegen/boxWithStdlib/reflection/properties/propertyOfNestedClassAndArrayType.kt @@ -1,3 +1,5 @@ +import kotlin.reflect.KMutableProperty1 + class A { class B(val result: String) @@ -8,9 +10,11 @@ class A { fun box(): String { val a = A() - (A::q).set(a, arrayOf(arrayOf(A.B("array")))) + val aq = A::class.members.single { it.name == "q" } as KMutableProperty1>> + aq.set(a, arrayOf(arrayOf(A.B("array")))) if (a.q!![0][0].result != "array") return "Fail array" - (A::p).set(a, A.B("OK")) + val ap = A::class.members.single { it.name == "p" } as KMutableProperty1 + ap.set(a, A.B("OK")) return a.p!!.result } diff --git a/compiler/tests/org/jetbrains/kotlin/codegen/BlackBoxCodegenTestGenerated.java b/compiler/tests/org/jetbrains/kotlin/codegen/BlackBoxCodegenTestGenerated.java index f30a316fd5d..fd085e330c5 100644 --- a/compiler/tests/org/jetbrains/kotlin/codegen/BlackBoxCodegenTestGenerated.java +++ b/compiler/tests/org/jetbrains/kotlin/codegen/BlackBoxCodegenTestGenerated.java @@ -1460,6 +1460,12 @@ public class BlackBoxCodegenTestGenerated extends AbstractBlackBoxCodegenTest { doTest(fileName); } + @TestMetadata("localFunctionName.kt") + public void testLocalFunctionName() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/callableReference/function/local/localFunctionName.kt"); + doTest(fileName); + } + @TestMetadata("localLocal.kt") public void testLocalLocal() throws Exception { String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/callableReference/function/local/localLocal.kt"); diff --git a/compiler/tests/org/jetbrains/kotlin/codegen/BlackBoxWithStdlibCodegenTestGenerated.java b/compiler/tests/org/jetbrains/kotlin/codegen/BlackBoxWithStdlibCodegenTestGenerated.java index f7fa8c7c42e..3f6c67afa13 100644 --- a/compiler/tests/org/jetbrains/kotlin/codegen/BlackBoxWithStdlibCodegenTestGenerated.java +++ b/compiler/tests/org/jetbrains/kotlin/codegen/BlackBoxWithStdlibCodegenTestGenerated.java @@ -2493,12 +2493,6 @@ public class BlackBoxWithStdlibCodegenTestGenerated extends AbstractBlackBoxCode doTestWithStdlib(fileName); } - @TestMetadata("localFunctionName.kt") - public void testLocalFunctionName() throws Exception { - String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/boxWithStdlib/reflection/functions/localFunctionName.kt"); - doTestWithStdlib(fileName); - } - @TestMetadata("platformName.kt") public void testPlatformName() throws Exception { String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/boxWithStdlib/reflection/functions/platformName.kt"); diff --git a/compiler/tests/org/jetbrains/kotlin/codegen/CodegenTestCase.java b/compiler/tests/org/jetbrains/kotlin/codegen/CodegenTestCase.java index 9a4a82aab50..713b919be8d 100644 --- a/compiler/tests/org/jetbrains/kotlin/codegen/CodegenTestCase.java +++ b/compiler/tests/org/jetbrains/kotlin/codegen/CodegenTestCase.java @@ -187,9 +187,9 @@ public abstract class CodegenTestCase extends UsefulTestCase { protected GeneratedClassLoader createClassLoader() { return new GeneratedClassLoader( generateClassesInFile(), - configurationKind == ConfigurationKind.NO_KOTLIN_REFLECT ? - ForTestCompileRuntime.runtimeJarClassLoader() : - ForTestCompileRuntime.runtimeAndReflectJarClassLoader(), + configurationKind.getWithReflection() + ? ForTestCompileRuntime.runtimeAndReflectJarClassLoader() + : ForTestCompileRuntime.runtimeJarClassLoader(), getClassPathURLs() ); } diff --git a/compiler/tests/org/jetbrains/kotlin/codegen/ReflectionClassLoaderTest.kt b/compiler/tests/org/jetbrains/kotlin/codegen/ReflectionClassLoaderTest.kt index 2841b6adba3..aa35132228e 100644 --- a/compiler/tests/org/jetbrains/kotlin/codegen/ReflectionClassLoaderTest.kt +++ b/compiler/tests/org/jetbrains/kotlin/codegen/ReflectionClassLoaderTest.kt @@ -23,7 +23,8 @@ class ReflectionClassLoaderTest : CodegenTestCase() { override fun setUp() { super.setUp() - createEnvironmentWithMockJdkAndIdeaAnnotations(ConfigurationKind.ALL) + configurationKind = ConfigurationKind.ALL + createEnvironmentWithMockJdkAndIdeaAnnotations(configurationKind) } private fun Class<*>.methodByName(name: String) = declaredMethods.single { it.name == name }