From 41f81ba05a8954c1ede046a17743d613cbc4d941 Mon Sep 17 00:00:00 2001 From: Paul Duffin Date: Tue, 14 Nov 2017 10:11:18 +0000 Subject: [PATCH] Stop using c.a.i.u.Predicate outside test-runner This class has been deprecated and should only be used in the frameworks/base/test-runner directory. Bug: 30188076 Test: make checkbuild Change-Id: I61059a96aa6045c44546239b94b329c02bb745a1 --- .../src/com/android/internal/util/Predicate.java | 1 + .../server/wm/TaskSnapshotPersisterLoaderTest.java | 13 ++++++++++++- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/legacy-test/src/com/android/internal/util/Predicate.java b/legacy-test/src/com/android/internal/util/Predicate.java index 1b5eaff67b87d..e87f489f46704 100644 --- a/legacy-test/src/com/android/internal/util/Predicate.java +++ b/legacy-test/src/com/android/internal/util/Predicate.java @@ -27,6 +27,7 @@ package com.android.internal.util; * strongly encouraged to state this fact clearly in their API documentation. * * @deprecated Use {@code java.util.function.Predicate} instead. + * This must not be used outside frameworks/base/test-runner. */ @Deprecated public interface Predicate { diff --git a/services/tests/servicestests/src/com/android/server/wm/TaskSnapshotPersisterLoaderTest.java b/services/tests/servicestests/src/com/android/server/wm/TaskSnapshotPersisterLoaderTest.java index 39c0de82e821b..2f3c03c239513 100644 --- a/services/tests/servicestests/src/com/android/server/wm/TaskSnapshotPersisterLoaderTest.java +++ b/services/tests/servicestests/src/com/android/server/wm/TaskSnapshotPersisterLoaderTest.java @@ -31,7 +31,6 @@ import android.support.test.filters.MediumTest; import android.support.test.runner.AndroidJUnit4; import android.util.ArraySet; -import com.android.internal.util.Predicate; import com.android.server.wm.TaskSnapshotPersister.RemoveObsoleteFilesQueueItem; import org.junit.Test; @@ -176,4 +175,16 @@ public class TaskSnapshotPersisterLoaderTest extends TaskSnapshotPersisterTestBa new File(sFilesDir.getPath() + "/snapshots/2_reduced.jpg")}; assertTrueForFiles(existsFiles, File::exists, " must exist"); } + + /** + * Private predicate definition. + * + * This is needed because com.android.internal.util.Predicate is deprecated + * and can only be used with classes fron android.test.runner. This cannot + * use java.util.function.Predicate because that is not present on all API + * versions that this test must run on. + */ + private interface Predicate { + boolean apply(T t); + } }