Add Guava 32.1.2 (both JRE an Android versionis) to third_party for tests
See b/295485262 for why the build dependencies is not updated to this
version as well.
Fixes: b/289363570
Bug: b/295485262
Change-Id: I8752606ef1306e9ad3d65a501da13efb78dd68cc
diff --git a/src/test/java/com/android/tools/r8/ToolHelper.java b/src/test/java/com/android/tools/r8/ToolHelper.java
index e7fe52c..59b00db 100644
--- a/src/test/java/com/android/tools/r8/ToolHelper.java
+++ b/src/test/java/com/android/tools/r8/ToolHelper.java
@@ -194,6 +194,10 @@
// Currently Gson is still shipping without consumer keep rules.
public static final Path GSON_KEEP_RULES =
Paths.get(ToolHelper.THIRD_PARTY_DIR, "gson", "gson-2.10.1", "gson.pro");
+ public static final Path GUAVA_JRE =
+ Paths.get(THIRD_PARTY_DIR, "guava", "guava-32.1.2-jre", "guava-32.1.2-jre.jar");
+ public static final Path GUAVA_ANDROID =
+ Paths.get(THIRD_PARTY_DIR, "guava", "guava-32.1.2-android", "guava-32.1.2-android.jar");
public static final String PROGUARD_SETTINGS_FOR_INTERNAL_APPS =
THIRD_PARTY_DIR + "proguardsettings/";
diff --git a/src/test/java/com/android/tools/r8/desugar/desugaredlibrary/GuavaMultiSetSpliteratorTest.java b/src/test/java/com/android/tools/r8/desugar/desugaredlibrary/GuavaMultiSetSpliteratorTest.java
index a8fd859..8caa44c 100644
--- a/src/test/java/com/android/tools/r8/desugar/desugaredlibrary/GuavaMultiSetSpliteratorTest.java
+++ b/src/test/java/com/android/tools/r8/desugar/desugaredlibrary/GuavaMultiSetSpliteratorTest.java
@@ -9,10 +9,10 @@
import static com.android.tools.r8.desugar.desugaredlibrary.test.LibraryDesugaringSpecification.getJdk8Jdk11;
import com.android.tools.r8.TestParameters;
+import com.android.tools.r8.ToolHelper;
import com.android.tools.r8.desugar.desugaredlibrary.test.CompilationSpecification;
import com.android.tools.r8.desugar.desugaredlibrary.test.LibraryDesugaringSpecification;
import com.android.tools.r8.utils.AndroidApiLevel;
-import com.android.tools.r8.utils.DaggerUtils;
import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableMultiset;
import com.google.common.collect.Multiset;
@@ -63,11 +63,13 @@
Assume.assumeTrue(parameters.getApiLevel().isGreaterThanOrEqualTo(AndroidApiLevel.L));
}
testForDesugaredLibrary(parameters, libraryDesugaringSpecification, compilationSpecification)
- // TODO(b/289363570): Guava should not rely on dagger.
- .addProgramFiles(DaggerUtils.getGuavaFromDagger())
+ .addProgramFiles(ToolHelper.GUAVA_JRE)
.addInnerClasses(getClass())
.addOptionsModification(opt -> opt.ignoreMissingClasses = true)
- .allowDiagnosticWarningMessages()
+ // The Guava embedded ProGuard rules include unused rules and unused -dontwarn patterns.
+ .allowDiagnosticMessages()
+ .allowUnusedProguardConfigurationRules()
+ .allowUnusedDontWarnPatterns()
.addKeepMainRule(Main.class)
.run(parameters.getRuntime(), Main.class)
.assertSuccessWithOutputLines("17744", "NullPointerException");
diff --git a/src/test/java/com/android/tools/r8/utils/DaggerUtils.java b/src/test/java/com/android/tools/r8/utils/DaggerUtils.java
index 685c0e7..de4e55f 100644
--- a/src/test/java/com/android/tools/r8/utils/DaggerUtils.java
+++ b/src/test/java/com/android/tools/r8/utils/DaggerUtils.java
@@ -57,10 +57,6 @@
.map(DAGGER_ROOT::resolve)
.collect(ImmutableList.toImmutableList());
- public static Path getGuavaFromDagger() {
- return DAGGER_ROOT.resolve(GUAVA);
- }
-
public static List<Path> getDaggerRuntime() {
return DAGGER_RUNTIME;
}
diff --git a/third_party/guava/guava-32.1.2-android.tar.gz.sha1 b/third_party/guava/guava-32.1.2-android.tar.gz.sha1
new file mode 100644
index 0000000..1185b35
--- /dev/null
+++ b/third_party/guava/guava-32.1.2-android.tar.gz.sha1
@@ -0,0 +1 @@
+043d1f6007f83112e7d9e1f38a704b2277d4328b
\ No newline at end of file
diff --git a/third_party/guava/guava-32.1.2-jre.tar.gz.sha1 b/third_party/guava/guava-32.1.2-jre.tar.gz.sha1
new file mode 100644
index 0000000..8941f74
--- /dev/null
+++ b/third_party/guava/guava-32.1.2-jre.tar.gz.sha1
@@ -0,0 +1 @@
+4089d8efb5de83eecbafb6d093abde46f80700ab
\ No newline at end of file