summaryrefslogtreecommitdiff
path: root/platform/android/MapboxGLAndroidSDK/src/test/java/com/mapbox/mapboxsdk/location/CompassEngineTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'platform/android/MapboxGLAndroidSDK/src/test/java/com/mapbox/mapboxsdk/location/CompassEngineTest.java')
-rw-r--r--platform/android/MapboxGLAndroidSDK/src/test/java/com/mapbox/mapboxsdk/location/CompassEngineTest.java25
1 files changed, 25 insertions, 0 deletions
diff --git a/platform/android/MapboxGLAndroidSDK/src/test/java/com/mapbox/mapboxsdk/location/CompassEngineTest.java b/platform/android/MapboxGLAndroidSDK/src/test/java/com/mapbox/mapboxsdk/location/CompassEngineTest.java
index bc64379263..bebd828118 100644
--- a/platform/android/MapboxGLAndroidSDK/src/test/java/com/mapbox/mapboxsdk/location/CompassEngineTest.java
+++ b/platform/android/MapboxGLAndroidSDK/src/test/java/com/mapbox/mapboxsdk/location/CompassEngineTest.java
@@ -1,6 +1,7 @@
package com.mapbox.mapboxsdk.location;
import android.hardware.Sensor;
+import android.hardware.SensorEventListener;
import android.hardware.SensorManager;
import android.view.WindowManager;
@@ -10,7 +11,10 @@ import org.junit.runner.RunWith;
import org.mockito.Mock;
import org.mockito.junit.MockitoJUnitRunner;
+import static com.mapbox.mapboxsdk.location.LocationComponentCompassEngine.SENSOR_DELAY_MICROS;
import static junit.framework.Assert.assertEquals;
+import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.times;
import static org.mockito.Mockito.verify;
@@ -27,8 +31,15 @@ public class CompassEngineTest {
@Mock
private SensorManager sensorManager;
+ @Mock
+ private Sensor compassSensor;
+
+ @Mock
+ private CompassListener compassListener;
+
@Before
public void setUp() throws Exception {
+ when(sensorManager.getDefaultSensor(Sensor.TYPE_ROTATION_VECTOR)).thenReturn(compassSensor);
compassEngine = new LocationComponentCompassEngine(windowManager, sensorManager);
}
@@ -61,4 +72,18 @@ public class CompassEngineTest {
verify(sensorManager, times(1)).getDefaultSensor(Sensor.TYPE_MAGNETIC_FIELD);
}
+
+ @Test
+ public void listener_registerOnAdd() {
+ compassEngine.addCompassListener(compassListener);
+ verify(sensorManager)
+ .registerListener(any(SensorEventListener.class), eq(compassSensor), eq(SENSOR_DELAY_MICROS));
+ }
+
+ @Test
+ public void listener_unregisterOnRemove() {
+ compassEngine.addCompassListener(compassListener);
+ compassEngine.removeCompassListener(compassListener);
+ verify(sensorManager).unregisterListener(any(SensorEventListener.class), eq(compassSensor));
+ }
}