summaryrefslogtreecommitdiff
path: root/platform/android/MapboxGLAndroidSDK/src/test/java/com/mapbox/mapboxsdk/module/telemetry/MapEventFactoryTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'platform/android/MapboxGLAndroidSDK/src/test/java/com/mapbox/mapboxsdk/module/telemetry/MapEventFactoryTest.java')
-rw-r--r--platform/android/MapboxGLAndroidSDK/src/test/java/com/mapbox/mapboxsdk/module/telemetry/MapEventFactoryTest.java56
1 files changed, 53 insertions, 3 deletions
diff --git a/platform/android/MapboxGLAndroidSDK/src/test/java/com/mapbox/mapboxsdk/module/telemetry/MapEventFactoryTest.java b/platform/android/MapboxGLAndroidSDK/src/test/java/com/mapbox/mapboxsdk/module/telemetry/MapEventFactoryTest.java
index f5c9493e21..b028911d4d 100644
--- a/platform/android/MapboxGLAndroidSDK/src/test/java/com/mapbox/mapboxsdk/module/telemetry/MapEventFactoryTest.java
+++ b/platform/android/MapboxGLAndroidSDK/src/test/java/com/mapbox/mapboxsdk/module/telemetry/MapEventFactoryTest.java
@@ -1,8 +1,10 @@
package com.mapbox.mapboxsdk.module.telemetry;
import android.os.Build;
+import android.os.Bundle;
import com.google.gson.Gson;
+import com.google.gson.JsonObject;
import com.mapbox.mapboxsdk.BuildConfig;
import com.mapbox.mapboxsdk.constants.TelemetryConstants;
import com.mapbox.mapboxsdk.offline.OfflineRegion;
@@ -10,8 +12,15 @@ import com.mapbox.mapboxsdk.offline.OfflineRegion;
import org.junit.Before;
import org.junit.Test;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Locale;
+
+import static com.mapbox.mapboxsdk.module.telemetry.PerformanceEvent.PerformanceAttribute;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.when;
public class MapEventFactoryTest {
private static final float FONT_SCALE = 1.f;
@@ -29,9 +38,10 @@ public class MapEventFactoryTest {
private static final Double MIN_ZOOM = 1.0;
private static final Double MAX_ZOOM = 10.0;
private static final String STYLE_URL = "style url";
- private static final long SIZE_OF_RESOURCES_COMPLETED = 100L;
- private static final long NUMBER_OF_TILE_COMPLETED = 1000L;
+ private static final long SIZE_OF_RESOURCES_COMPLETED = 100;
+ private static final long NUMBER_OF_TILE_COMPLETED = 1000;
private static final int STATE = OfflineRegion.STATE_ACTIVE;
+ private static final String SESSION_ID = "001";
private MapState mapState;
private PhoneState phoneState;
@@ -121,7 +131,7 @@ public class MapEventFactoryTest {
assertEquals(STYLE_URL, offlineDownloadEndEvent.getStyleURL());
assertEquals(SIZE_OF_RESOURCES_COMPLETED, offlineDownloadEndEvent.getSizeOfResourcesCompleted());
assertEquals(NUMBER_OF_TILE_COMPLETED, offlineDownloadEndEvent.getNumberOfTilesCompleted());
- assertEquals(STATE, offlineDownloadEndEvent.getState());
+ assertEquals(String.valueOf(STATE), offlineDownloadEndEvent.getState());
assertEquals(CREATED, offlineDownloadEndEvent.getCreated());
String json = gson.toJson(offlineDownloadEndEvent);
OfflineDownloadEndEvent event = gson.fromJson(json, OfflineDownloadEndEvent.class);
@@ -141,4 +151,44 @@ public class MapEventFactoryTest {
OfflineDownloadStartEvent event = gson.fromJson(json, OfflineDownloadStartEvent.class);
assertEquals(offlineDownloadStartEvent, event);
}
+
+ @Test
+ public void testPerformanceEvent() {
+ String nameAttribute = "nameAttribute";
+ String valueAttribute = "100";
+ String nameCounters = "nameCounters";
+ Double valuesCounters = 1000.0;
+ JsonObject metaData = new JsonObject();
+ metaData.addProperty("os", "android");
+ metaData.addProperty("manufacturer", Build.MANUFACTURER);
+ metaData.addProperty("brand", Build.BRAND);
+ metaData.addProperty("device", Build.MODEL);
+ metaData.addProperty("version", Build.VERSION.RELEASE);
+ metaData.addProperty("abi", Build.CPU_ABI);
+ metaData.addProperty("country", Locale.getDefault().getISO3Country());
+ metaData.addProperty("ram", "ram");
+ metaData.addProperty("screenSize", "1000");
+
+ Bundle data = mock(Bundle.class);
+ ArrayList<PerformanceEvent.PerformanceAttribute<String>> attribtueList = new ArrayList<>();
+ PerformanceAttribute<String> attribute = new PerformanceAttribute<>(nameAttribute, valueAttribute);
+ attribtueList.add(attribute);
+ ArrayList<PerformanceEvent.PerformanceAttribute<Double>> countersList = new ArrayList<>();
+ PerformanceAttribute<Double> counter = new PerformanceAttribute<>(nameCounters, valuesCounters);
+ countersList.add(counter);
+ when(data.getString("attributes")).thenReturn(gson.toJson(attribtueList));
+ when(data.getString("counters")).thenReturn(gson.toJson(countersList));
+ when(data.getString("metadata")).thenReturn(metaData.toString());
+ PerformanceEvent performanceEvent = MapEventFactory.buildPerformanceEvent(phoneState,
+ SESSION_ID, data);
+ assertEquals(CREATED, performanceEvent.getCreated());
+ assertEquals(metaData.toString(), performanceEvent.getMetadata().toString());
+ assertEquals(SESSION_ID, performanceEvent.getSessionId());
+ List<PerformanceEvent.PerformanceAttribute<String>> attributeList = performanceEvent.getAttributes();
+ assertEquals(1, attribtueList.size());
+ assertEquals(attribute, attribtueList.get(0));
+ List<PerformanceEvent.PerformanceAttribute<Double>> counterList = performanceEvent.getCounters();
+ assertEquals(1, counterList.size());
+ assertEquals(counter, counterList.get(0));
+ }
}