diff options
author | Łukasz Paczos <lukas.paczos@gmail.com> | 2019-07-11 16:04:30 +0200 |
---|---|---|
committer | Łukasz Paczos <lukasz.paczos@mapbox.com> | 2019-07-11 18:18:48 +0200 |
commit | ac0431eac5ee6a16f7f32707effda20362107df7 (patch) | |
tree | 74a4272308b0158b1c9316ea4ff40015f5e0e63e /platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/maps | |
parent | 11cd2220a1ec780293db63e1658cd06853a2f1ad (diff) | |
download | qtlocation-mapboxgl-ac0431eac5ee6a16f7f32707effda20362107df7.tar.gz |
[android] ensure that move detector is enabled if double-tap is interrupted
Diffstat (limited to 'platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/maps')
-rw-r--r-- | platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/maps/MapGestureDetectorTest.kt | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/maps/MapGestureDetectorTest.kt b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/maps/MapGestureDetectorTest.kt index 7650e1ff60..1e5cdf8b73 100644 --- a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/maps/MapGestureDetectorTest.kt +++ b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/maps/MapGestureDetectorTest.kt @@ -158,4 +158,29 @@ class MapGestureDetectorTest : BaseTest() { Assert.assertEquals(initialZoom!!, mapboxMap.cameraPosition.zoom, 0.01) } } + + @Test + fun doubleTap_interrupted_moveStillEnabled() { + validateTestSetup() + + rule.runOnUiThread { + mapboxMap.moveCamera(CameraUpdateFactory.zoomTo(4.0)) + } + + onView(withId(R.id.mapView)).perform(quickScale(mapboxMap.gesturesManager.standardScaleGestureDetector.spanSinceStartThreshold / 2, withVelocity = false, duration = 50L, interrupt = true)) + + var expectedTarget: LatLng? = null + rule.runOnUiThread { + val currentPoint = mapboxMap.projection.toScreenLocation(mapboxMap.cameraPosition.target) + val resultingPoint = PointF(currentPoint.x + maxWidth / 2f, currentPoint.y + maxHeight / 2f) + expectedTarget = mapboxMap.projection.fromScreenLocation(resultingPoint) + } + + // move to expected target + onView(withId(R.id.mapView)).perform(move(-maxWidth / 2f, -maxHeight / 2f, withVelocity = false)) + rule.runOnUiThread { + Assert.assertEquals(expectedTarget!!.latitude, mapboxMap.cameraPosition.target.latitude, 10.0) + Assert.assertEquals(expectedTarget!!.longitude, mapboxMap.cameraPosition.target.longitude, 10.0) + } + } }
\ No newline at end of file |