From d47eab05f66d7f7aed0e833a250f6be060c46441 Mon Sep 17 00:00:00 2001 From: Tobrun Date: Wed, 21 Jun 2017 15:43:02 +0200 Subject: [android] - restore LatLngBounds conversion, add regression test (#9324) --- .../testapp/geometry/LatLngBoundsTest.java | 40 ++++++++++++++++++++++ platform/android/src/geometry/lat_lng_bounds.cpp | 8 ++--- 2 files changed, 44 insertions(+), 4 deletions(-) create mode 100644 platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/geometry/LatLngBoundsTest.java diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/geometry/LatLngBoundsTest.java b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/geometry/LatLngBoundsTest.java new file mode 100644 index 0000000000..f3ce9994a3 --- /dev/null +++ b/platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/geometry/LatLngBoundsTest.java @@ -0,0 +1,40 @@ +package com.mapbox.mapboxsdk.testapp.geometry; + +import android.support.test.espresso.UiController; + +import com.mapbox.mapboxsdk.camera.CameraUpdateFactory; +import com.mapbox.mapboxsdk.geometry.LatLng; +import com.mapbox.mapboxsdk.geometry.LatLngBounds; +import com.mapbox.mapboxsdk.maps.MapboxMap; +import com.mapbox.mapboxsdk.testapp.action.MapboxMapAction; +import com.mapbox.mapboxsdk.testapp.activity.BaseActivityTest; +import com.mapbox.mapboxsdk.testapp.activity.feature.QueryRenderedFeaturesBoxHighlightActivity; + +import org.junit.Test; + +/** + * Instrumentation test to validate integration of LatLngBounds + */ +public class LatLngBoundsTest extends BaseActivityTest { + + @Override + protected Class getActivityClass() { + return QueryRenderedFeaturesBoxHighlightActivity.class; + } + + @Test + public void testLatLngBounds() { + // regression test for #9322 + validateTestSetup(); + MapboxMapAction.invoke(mapboxMap, new MapboxMapAction.OnInvokeActionListener() { + @Override + public void onInvokeAction(UiController uiController, MapboxMap mapboxMap) { + LatLngBounds bounds = new LatLngBounds.Builder() + .include(new LatLng(48.8589506, 2.2773457)) + .include(new LatLng(47.2383171, -1.6309316)) + .build(); + mapboxMap.moveCamera(CameraUpdateFactory.newLatLngBounds(bounds, 0)); + } + }); + } +} \ No newline at end of file diff --git a/platform/android/src/geometry/lat_lng_bounds.cpp b/platform/android/src/geometry/lat_lng_bounds.cpp index 9efacde120..ec1a32fed5 100644 --- a/platform/android/src/geometry/lat_lng_bounds.cpp +++ b/platform/android/src/geometry/lat_lng_bounds.cpp @@ -9,10 +9,10 @@ jni::Object LatLngBounds::New(jni::JNIEnv& env, mbgl::LatLngBounds } mbgl::LatLngBounds LatLngBounds::getLatLngBounds(jni::JNIEnv& env, jni::Object bounds) { - static auto swLat = LatLngBounds::javaClass.GetField(env, "mLatSouth"); - static auto swLon = LatLngBounds::javaClass.GetField(env, "mLonWest"); - static auto neLat = LatLngBounds::javaClass.GetField(env, "mLatNorth"); - static auto neLon = LatLngBounds::javaClass.GetField(env, "mLonEast"); + static auto swLat = LatLngBounds::javaClass.GetField(env, "latitudeSouth"); + static auto swLon = LatLngBounds::javaClass.GetField(env, "longitudeWest"); + static auto neLat = LatLngBounds::javaClass.GetField(env, "latitudeNorth"); + static auto neLon = LatLngBounds::javaClass.GetField(env, "longitudeEast"); return mbgl::LatLngBounds::hull( { bounds.Get(env, swLat), bounds.Get(env, swLon) }, { bounds.Get(env, neLat), bounds.Get(env, neLon) } -- cgit v1.2.1