Fix tests after updating kotlin-dev
Bug: b/242158616
Change-Id: I5964497d83be076057246ccd1a59e13db304cb8e
diff --git a/src/test/java/com/android/tools/r8/R8TestBuilder.java b/src/test/java/com/android/tools/r8/R8TestBuilder.java
index 3bdfa4b..824203a 100644
--- a/src/test/java/com/android/tools/r8/R8TestBuilder.java
+++ b/src/test/java/com/android/tools/r8/R8TestBuilder.java
@@ -346,6 +346,19 @@
return self();
}
+ public T allowUnusedDontWarnJavaLangClassValue() {
+ addOptionsModification(
+ options -> options.testing.allowedUnusedDontWarnPatterns.add("java.lang.ClassValue"));
+ return self();
+ }
+
+ public T allowUnusedDontWarnJavaLangClassValue(boolean condition) {
+ if (condition) {
+ allowUnusedDontWarnJavaLangClassValue();
+ }
+ return self();
+ }
+
public T allowUnusedDontWarnPatterns() {
return addOptionsModification(options -> options.testing.allowUnusedDontWarnRules = true);
}
diff --git a/src/test/java/com/android/tools/r8/kotlin/ProcessKotlinReflectionLibTest.java b/src/test/java/com/android/tools/r8/kotlin/ProcessKotlinReflectionLibTest.java
index 6f48c3d..0a93f62 100644
--- a/src/test/java/com/android/tools/r8/kotlin/ProcessKotlinReflectionLibTest.java
+++ b/src/test/java/com/android/tools/r8/kotlin/ProcessKotlinReflectionLibTest.java
@@ -4,6 +4,7 @@
package com.android.tools.r8.kotlin;
import static com.android.tools.r8.KotlinCompilerTool.KotlinCompilerVersion.KOTLINC_1_3_72;
+import static com.android.tools.r8.KotlinCompilerTool.KotlinCompilerVersion.KOTLINC_1_7_0;
import com.android.tools.r8.KotlinTestBase;
import com.android.tools.r8.KotlinTestParameters;
@@ -56,6 +57,8 @@
.addKeepAttributes(ProguardKeepAttributes.ENCLOSING_METHOD)
.allowUnusedDontWarnKotlinReflectJvmInternal(kotlinc.isNot(KOTLINC_1_3_72))
.allowUnusedProguardConfigurationRules(kotlinc.isNot(KOTLINC_1_3_72))
+ .allowUnusedDontWarnJavaLangClassValue(
+ kotlinc.getCompilerVersion().isGreaterThan(KOTLINC_1_7_0))
.apply(testBuilderConsumer)
.compile()
.apply(compileResultBuilder)
diff --git a/src/test/java/com/android/tools/r8/kotlin/metadata/MetadataStripTest.java b/src/test/java/com/android/tools/r8/kotlin/metadata/MetadataStripTest.java
index baf09cc..d74e3d2 100644
--- a/src/test/java/com/android/tools/r8/kotlin/metadata/MetadataStripTest.java
+++ b/src/test/java/com/android/tools/r8/kotlin/metadata/MetadataStripTest.java
@@ -4,6 +4,7 @@
package com.android.tools.r8.kotlin.metadata;
import static com.android.tools.r8.KotlinCompilerTool.KotlinCompilerVersion.KOTLINC_1_3_72;
+import static com.android.tools.r8.KotlinCompilerTool.KotlinCompilerVersion.KOTLINC_1_7_0;
import static com.android.tools.r8.utils.codeinspector.Matchers.isPresent;
import static com.android.tools.r8.utils.codeinspector.Matchers.isPresentAndNotRenamed;
import static com.android.tools.r8.utils.codeinspector.Matchers.isPresentAndRenamed;
@@ -57,6 +58,8 @@
.allowDiagnosticWarningMessages()
.setMinApi(parameters.getApiLevel())
.allowUnusedDontWarnKotlinReflectJvmInternal(kotlinc.isNot(KOTLINC_1_3_72))
+ .allowUnusedDontWarnJavaLangClassValue(
+ kotlinc.getCompilerVersion().isGreaterThan(KOTLINC_1_7_0))
.compile()
.assertNoErrorMessages()
.apply(KotlinMetadataTestBase::verifyExpectedWarningsFromKotlinReflectAndStdLib)
diff --git a/src/test/java/com/android/tools/r8/kotlin/reflection/ReflectiveConstructionWithInlineClassTest.java b/src/test/java/com/android/tools/r8/kotlin/reflection/ReflectiveConstructionWithInlineClassTest.java
index 3b9e678..6273755 100644
--- a/src/test/java/com/android/tools/r8/kotlin/reflection/ReflectiveConstructionWithInlineClassTest.java
+++ b/src/test/java/com/android/tools/r8/kotlin/reflection/ReflectiveConstructionWithInlineClassTest.java
@@ -100,6 +100,12 @@
.setMinApi(parameters.getApiLevel())
.addKeepMainRule(MAIN_CLASS)
.addKeepClassAndMembersRules(PKG + ".Data")
+ // TODO(b/242158616): Figure out why this is necessary.
+ .applyIf(
+ kotlinc.getCompilerVersion().isGreaterThan(KotlinCompilerVersion.KOTLINC_1_7_0),
+ b ->
+ b.addKeepClassAndMembersRules(
+ "kotlin.reflect.jvm.internal.ClassValueCache$initClassValue$1"))
.addKeepEnumsRule()
.addKeepAttributes(ProguardKeepAttributes.RUNTIME_VISIBLE_ANNOTATIONS)
.allowDiagnosticMessages()