commit | 04148972da9e5a60bf5a506d0ea516b99ca2d4c1 | [log] [tgz] |
---|---|---|
author | Chiachang Wang <chiachangwang@google.com> | Fri Sep 18 10:04:48 2020 +0000 |
committer | Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> | Fri Sep 18 10:04:48 2020 +0000 |
tree | 015e0dbd72df0208020a1e177e5d7a1e6f92a992 | |
parent | 8eacd1774d1a3f58632eb7402778aede2ac92fb1 [diff] | |
parent | d0adace2e6141cf7887e5cc24f1119c02f9702d9 [diff] |
Merge "Add eventuallyExpect overload" am: 17c4212953 am: b76e0fe730 Original change: https://android-review.googlesource.com/c/platform/frameworks/libs/net/+/1413547 Change-Id: I20b9c4502a8d61ed8b5c85b45f212d2b1a5219f8
diff --git a/staticlibs/devicetests/com/android/testutils/TestableNetworkCallback.kt b/staticlibs/devicetests/com/android/testutils/TestableNetworkCallback.kt index 3c038fa..7cd5419 100644 --- a/staticlibs/devicetests/com/android/testutils/TestableNetworkCallback.kt +++ b/staticlibs/devicetests/com/android/testutils/TestableNetworkCallback.kt
@@ -203,6 +203,14 @@ assertNotNull(it, "Callback ${T::class} not received within ${timeoutMs}ms") } as T + fun <T : CallbackEntry> eventuallyExpect( + type: KClass<T>, + timeoutMs: Long = defaultTimeoutMs, + predicate: (T: CallbackEntry) -> Boolean = { true } + ) = history.poll(timeoutMs) { type.java.isInstance(it) && predicate(it) }.also { + assertNotNull(it, "Callback ${type.java} not received within ${timeoutMs}ms") + } as T + // TODO (b/157405399) straighten and unify the method names inline fun <reified T : CallbackEntry> eventuallyExpectOrNull( timeoutMs: Long = defaultTimeoutMs,