diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapView.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapView.java index 67d67bba3..1460b4b79 100644 --- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapView.java +++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapView.java @@ -203,7 +203,7 @@ public class MapView extends FrameLayout { // Shows the zoom controls if (!context.getPackageManager() .hasSystemFeature(PackageManager.FEATURE_TOUCHSCREEN_MULTITOUCH)) { - mMapboxMap.setZoomControlsEnabled(true); + mMapboxMap.getUiSettings().setZoomControlsEnabled(true); } mZoomButtonsController = new ZoomButtonsController(this); mZoomButtonsController.setZoomSpeed(MapboxConstants.ANIMATION_DURATION); diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapboxMap.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapboxMap.java index 8e8265e76..57a86814a 100644 --- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapboxMap.java +++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapboxMap.java @@ -1,9 +1,7 @@ package com.mapbox.mapboxsdk.maps; -import android.Manifest; import android.content.Context; -import android.content.pm.PackageManager; import android.location.Location; import android.os.Bundle; import android.os.SystemClock; @@ -11,7 +9,6 @@ import android.support.annotation.FloatRange; import android.support.annotation.NonNull; import android.support.annotation.Nullable; import android.support.annotation.UiThread; -import android.support.v4.content.ContextCompat; import android.support.v4.util.LongSparseArray; import android.text.TextUtils; import android.util.Log; @@ -369,11 +366,6 @@ public class MapboxMap { // Manual zoom controls // - // used by UiSettings - void setZoomControlsEnabled(boolean enabled) { - mMapView.setZoomControlsEnabled(enabled); - } - // // Debug // diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/test/java/com/mapbox/mapboxsdk/maps/MapboxMapTest.java b/platform/android/MapboxGLAndroidSDKTestApp/src/test/java/com/mapbox/mapboxsdk/maps/MapboxMapTest.java index 3781a98ff..de3ecd36b 100644 --- a/platform/android/MapboxGLAndroidSDKTestApp/src/test/java/com/mapbox/mapboxsdk/maps/MapboxMapTest.java +++ b/platform/android/MapboxGLAndroidSDKTestApp/src/test/java/com/mapbox/mapboxsdk/maps/MapboxMapTest.java @@ -4,7 +4,10 @@ import android.Manifest; import android.content.pm.PackageManager; import android.graphics.Color; import android.graphics.Point; +import android.support.annotation.NonNull; +import android.support.annotation.Nullable; import android.support.v4.content.ContextCompat; +import android.view.View; import com.mapbox.mapboxsdk.annotations.Marker; import com.mapbox.mapboxsdk.annotations.MarkerOptions; @@ -47,6 +50,39 @@ public class MapboxMapTest { @Mock MapboxMap.OnMarkerClickListener mOnMarkerClickListener; + @Mock + MapboxMap.OnCameraChangeListener mOnCameraChangeListener; + + @Mock + MapboxMap.InfoWindowAdapter mInfoWindowAdapter; + + @Mock + MapboxMap.OnScrollListener mScrollListener; + + @Mock + MapboxMap.OnFlingListener mFlingListener; + + @Mock + MapboxMap.OnFpsChangedListener mFpsChangedListener; + + @Mock + MapboxMap.OnInfoWindowClickListener mWindowClickListener; + + @Mock + MapboxMap.OnInfoWindowCloseListener mWindowCloseListener; + + @Mock + MapboxMap.OnInfoWindowLongClickListener mWindowLongClickListener; + + @Mock + MapboxMap.OnMyLocationChangeListener mLocationChangeListener; + + @Mock + MapboxMap.OnMyLocationTrackingModeChangeListener mMyLocationTrackingModeChangeListener; + + @Mock + MapboxMap.OnMyBearingTrackingModeChangeListener mMyBearingTrackingModeChangeListener; + @Before public void beforeTest() { MockitoAnnotations.initMocks(this); @@ -77,6 +113,15 @@ public class MapboxMapTest { assertNotNull("UiSettings should not be null", mMapboxMap.getUiSettings()); } + // + // TrackingSettings + // + + @Test + public void testTrackingSettings() { + assertNotNull("TrackingSettings should not be null", mMapboxMap.getTrackingSettings()); + } + // // Projection // @@ -86,7 +131,6 @@ public class MapboxMapTest { assertNotNull("Projection should not be null", mMapboxMap.getProjection()); } - // // InfoWindow // @@ -103,6 +147,12 @@ public class MapboxMapTest { assertFalse("ConcurrentWindows should be false", mMapboxMap.isAllowConcurrentMultipleOpenInfoWindows()); } + @Test + public void testInfoWindowAdapter() { + mMapboxMap.setInfoWindowAdapter(mInfoWindowAdapter); + assertEquals("InfoWindowAdpter should be the same", mInfoWindowAdapter, mMapboxMap.getInfoWindowAdapter()); + } + // // Location // @@ -122,6 +172,71 @@ public class MapboxMapTest { assertFalse("MyLocationEnabled should be false", mMapboxMap.isMyLocationEnabled()); } + // + // padding + // + + @Test + public void testPadding() { + mMapboxMap.setOnCameraChangeListener(mOnCameraChangeListener); + CameraPosition position = new CameraPosition.Builder().bearing(1).tilt(2).zoom(3).target(new LatLng(4, 5)).build(); + mMapboxMap.moveCamera(CameraUpdateFactory.newCameraPosition(position)); + mMapboxMap.setPadding(0, 0, 0, 0); + verify(mOnCameraChangeListener, times(2)).onCameraChange(position); + } + + // + // setters/getters interfaces + // + + @Test + public void testScrollListener() { + mMapboxMap.setOnScrollListener(mScrollListener); + assertEquals("ScrollListener should match", mScrollListener, mMapboxMap.getOnScrollListener()); + } + + @Test + public void testFlingListener() { + mMapboxMap.setOnFlingListener(mFlingListener); + assertEquals("FlingListener should match", mFlingListener, mMapboxMap.getOnFlingListener()); + } + + @Test + public void testFpsListener() { + mMapboxMap.setOnFpsChangedListener(mFpsChangedListener); + assertEquals("FpsListener should match", mFpsChangedListener, mMapboxMap.getOnFpsChangedListener()); + } + + @Test + public void testInfoWindowClickListener() { + mMapboxMap.setOnInfoWindowClickListener(mWindowClickListener); + assertEquals("InfoWidowClickListener should match", mWindowClickListener, mMapboxMap.getOnInfoWindowClickListener()); + } + + @Test + public void testInfoWindowCloseListener() { + mMapboxMap.setOnInfoWindowCloseListener(mWindowCloseListener); + assertEquals("InfoWindowCloseListener should match", mWindowCloseListener, mMapboxMap.getOnInfoWindowCloseListener()); + } + + @Test + public void testInfoWindowLongClickListener() { + mMapboxMap.setOnInfoWindowLongClickListener(mWindowLongClickListener); + assertEquals("InfoWindowLongClickListener should match", mWindowLongClickListener, mMapboxMap.getOnInfoWindowLongClickListener()); + } + + @Test + public void testOnBearingTrackingModeChangeListener(){ + mMapboxMap.setOnMyBearingTrackingModeChangeListener(mMyBearingTrackingModeChangeListener); + assertEquals("MyBearingTrackingChangeListerner should match",mMyBearingTrackingModeChangeListener, mMapboxMap.getOnMyBearingTrackingModeChangeListener()); + } + + @Test + public void testOnLocationTrackingModeChangeListener(){ + mMapboxMap.setOnMyLocationTrackingModeChangeListener(mMyLocationTrackingModeChangeListener); + assertEquals("MyLocationTrackigChangeListener should match",mMyLocationTrackingModeChangeListener, mMapboxMap.getOnMyLocationTrackingModeChangeListener()); + } + // // Style // @@ -199,7 +314,7 @@ public class MapboxMapTest { @Test public void testNewCameraPositionEaseCamera() { CameraPosition position = new CameraPosition.Builder().bearing(1).tilt(2).zoom(3).target(new LatLng(4, 5)).build(); - mMapboxMap.easeCamera(CameraUpdateFactory.newCameraPosition(position), 1000); + mMapboxMap.easeCamera(CameraUpdateFactory.newCameraPosition(position)); assertEquals("CameraPosition should be same", position, mMapboxMap.getCameraPosition()); } @@ -384,6 +499,18 @@ public class MapboxMapTest { assertTrue("Zoomlevel should be same", 12 == mMapboxMap.getCameraPosition().zoom); } + // + // OnCameraChangeListener + // + + @Test + public void testOnCameraChangeListener() { + CameraPosition position = new CameraPosition.Builder().bearing(1).tilt(2).zoom(3).target(new LatLng(4, 5)).build(); + mMapboxMap.setOnCameraChangeListener(mOnCameraChangeListener); + mMapboxMap.moveCamera(CameraUpdateFactory.newCameraPosition(position)); + verify(mOnCameraChangeListener, times(1)).onCameraChange(position); + } + // // Annotations //