diff options
author | Łukasz Paczos <lukas.paczos@gmail.com> | 2019-08-21 18:18:14 +0200 |
---|---|---|
committer | Łukasz Paczos <lukasz.paczos@mapbox.com> | 2019-08-29 14:51:24 +0200 |
commit | becc705f05c00854ff9952925f203ed5cf829774 (patch) | |
tree | 9f453fecdcb3b30057e690b98d3ef766b1a477a6 /platform/android/MapboxGLAndroidSDK/src/test/java/com/mapbox/mapboxsdk/camera/CameraPositionTest.java | |
parent | e5c219d0356d45a5339c027297e441fd6cb96c05 (diff) | |
download | qtlocation-mapboxgl-becc705f05c00854ff9952925f203ed5cf829774.tar.gz |
[android] expose camera padding option
This removes the cached insets on the Android side, making the core TransformState the source of truth. This still leaves an option to lazily set the padding which is going to be applied only when the next camera animation is started.
Diffstat (limited to 'platform/android/MapboxGLAndroidSDK/src/test/java/com/mapbox/mapboxsdk/camera/CameraPositionTest.java')
-rw-r--r-- | platform/android/MapboxGLAndroidSDK/src/test/java/com/mapbox/mapboxsdk/camera/CameraPositionTest.java | 42 |
1 files changed, 26 insertions, 16 deletions
diff --git a/platform/android/MapboxGLAndroidSDK/src/test/java/com/mapbox/mapboxsdk/camera/CameraPositionTest.java b/platform/android/MapboxGLAndroidSDK/src/test/java/com/mapbox/mapboxsdk/camera/CameraPositionTest.java index 0c5f3a4be2..6974705fae 100644 --- a/platform/android/MapboxGLAndroidSDK/src/test/java/com/mapbox/mapboxsdk/camera/CameraPositionTest.java +++ b/platform/android/MapboxGLAndroidSDK/src/test/java/com/mapbox/mapboxsdk/camera/CameraPositionTest.java @@ -1,21 +1,24 @@ package com.mapbox.mapboxsdk.camera; import android.content.res.TypedArray; -import android.os.Parcelable; +import android.os.Parcel; import com.mapbox.mapboxsdk.R; import com.mapbox.mapboxsdk.geometry.LatLng; -import com.mapbox.mapboxsdk.utils.MockParcel; import org.junit.Test; +import org.junit.runner.RunWith; +import org.robolectric.RobolectricTestRunner; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotEquals; import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertNull; import static org.mockito.Mockito.doNothing; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.when; +@RunWith(RobolectricTestRunner.class) public class CameraPositionTest { private static final double DELTA = 1e-15; @@ -23,7 +26,7 @@ public class CameraPositionTest { @Test public void testSanity() { LatLng latLng = new LatLng(1, 2); - CameraPosition cameraPosition = new CameraPosition(latLng, 3, 4, 5); + CameraPosition cameraPosition = new CameraPosition(latLng, 3, 4, 5, new double[] {0, 500, 0, 0}); assertNotNull("cameraPosition should not be null", cameraPosition); } @@ -32,9 +35,10 @@ public class CameraPositionTest { TypedArray typedArray = null; CameraPosition cameraPosition = new CameraPosition.Builder(typedArray).build(); assertEquals("bearing should match", -1, cameraPosition.bearing, DELTA); - assertEquals("latlng should match", null, cameraPosition.target); + assertNull("latlng should be null", cameraPosition.target); assertEquals("tilt should match", -1, cameraPosition.tilt, DELTA); assertEquals("zoom should match", -1, cameraPosition.zoom, DELTA); + assertNull("padding should be null", cameraPosition.padding); } @Test @@ -63,16 +67,16 @@ public class CameraPositionTest { @Test public void testToString() { LatLng latLng = new LatLng(1, 2); - CameraPosition cameraPosition = new CameraPosition(latLng, 3, 4, 5); + CameraPosition cameraPosition = new CameraPosition(latLng, 3, 4, 5, new double[] {0, 500, 0, 0}); assertEquals("toString should match", "Target: LatLng [latitude=1.0, longitude=2.0, altitude=0.0], Zoom:3.0, " - + "Bearing:5.0, Tilt:4.0", cameraPosition.toString()); + + "Bearing:5.0, Tilt:4.0, Padding:[0.0, 500.0, 0.0, 0.0]", cameraPosition.toString()); } @Test public void testHashcode() { LatLng latLng = new LatLng(1, 2); - CameraPosition cameraPosition = new CameraPosition(latLng, 3, 4, 5); - assertEquals("hashCode should match", -1007681505, cameraPosition.hashCode()); + CameraPosition cameraPosition = new CameraPosition(latLng, 3, 4, 5, new double[] {0, 500, 0, 0}); + assertEquals("hashCode should match", -420915327, cameraPosition.hashCode()); } @Test @@ -86,11 +90,12 @@ public class CameraPositionTest { @Test public void testEquals() { LatLng latLng = new LatLng(1, 2); - CameraPosition cameraPosition = new CameraPosition(latLng, 3, 4, 5); - CameraPosition cameraPositionBearing = new CameraPosition(latLng, 3, 4, 9); - CameraPosition cameraPositionTilt = new CameraPosition(latLng, 3, 9, 5); - CameraPosition cameraPositionZoom = new CameraPosition(latLng, 9, 4, 5); - CameraPosition cameraPositionTarget = new CameraPosition(new LatLng(), 3, 4, 5); + CameraPosition cameraPosition = new CameraPosition(latLng, 3, 4, 5, new double[] {0, 500, 0, 0}); + CameraPosition cameraPositionBearing = new CameraPosition(latLng, 3, 4, 9, new double[] {0, 500, 0, 0}); + CameraPosition cameraPositionTilt = new CameraPosition(latLng, 3, 9, 5, new double[] {0, 500, 0, 0}); + CameraPosition cameraPositionZoom = new CameraPosition(latLng, 9, 4, 5, new double[] {0, 500, 0, 0}); + CameraPosition cameraPositionTarget = new CameraPosition(new LatLng(), 3, 4, 5, new double[] {0, 500, 0, 0}); + CameraPosition cameraPositionPadding = new CameraPosition(new LatLng(), 3, 4, 5, new double[] {0, 501, 0, 0}); assertEquals("cameraPosition should match itself", cameraPosition, cameraPosition); assertNotEquals("cameraPosition should not match null", null, cameraPosition); @@ -99,12 +104,17 @@ public class CameraPositionTest { assertNotEquals("cameraPosition should not match for tilt", cameraPositionTilt, cameraPosition); assertNotEquals("cameraPosition should not match for zoom", cameraPositionZoom, cameraPosition); assertNotEquals("cameraPosition should not match for target", cameraPositionTarget, cameraPosition); + assertNotEquals("cameraPosition should not match for padding", cameraPositionPadding, cameraPosition); } @Test public void testParcelable() { - CameraPosition object = new CameraPosition(new LatLng(1, 2), 3, 4, 5); - Parcelable parcelable = MockParcel.obtain(object); - assertEquals("Parcel should match original object", parcelable, object); + CameraPosition cameraPosition1 = new CameraPosition(new LatLng(1, 2), 3, 4, 5, new double[] {0, 500, 0, 0}); + Parcel parcel = Parcel.obtain(); + cameraPosition1.writeToParcel(parcel, 0); + parcel.setDataPosition(0); + + CameraPosition cameraPosition2 = CameraPosition.CREATOR.createFromParcel(parcel); + assertEquals("Parcel should match original object", cameraPosition1, cameraPosition2); } } |