diff options
Diffstat (limited to 'platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/utils/TestingAsyncUtils.kt')
-rw-r--r-- | platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/utils/TestingAsyncUtils.kt | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/utils/TestingAsyncUtils.kt b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/utils/TestingAsyncUtils.kt new file mode 100644 index 0000000000..7c23d8d63c --- /dev/null +++ b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/utils/TestingAsyncUtils.kt @@ -0,0 +1,18 @@ +package com.mapbox.mapboxsdk.testapp.utils + +import android.support.test.espresso.UiController +import com.mapbox.mapboxsdk.maps.MapView + +object TestingAsyncUtils { + private const val DEFAULT_TIMEOUT = 15_000L + + fun waitForLayer(uiController: UiController, mapView: MapView) { + val start = System.nanoTime() / 1E6 + var isIdle = false + mapView.addOnDidBecomeIdleListener { isIdle = true } + + while (!isIdle && System.nanoTime() / 1E6 - start < DEFAULT_TIMEOUT) { + uiController.loopMainThreadForAtLeast(100) + } + } +}
\ No newline at end of file |