diff options
author | Antonio Zugaldia <antonio@mapbox.com> | 2019-04-11 15:48:26 -0400 |
---|---|---|
committer | Łukasz Paczos <lukasz.paczos@mapbox.com> | 2019-04-18 16:07:43 +0200 |
commit | 80cb2053064e315f6c087d19f5c38c1bb94c75ff (patch) | |
tree | 742cae1321a10e277fb0152513aa0dc18a0b2b4d | |
parent | ef9967c35145fad367efa09e755717f36dcb3d68 (diff) | |
download | qtlocation-mapboxgl-80cb2053064e315f6c087d19f5c38c1bb94c75ff.tar.gz |
add unit test for isexpired and make run-android-unit-test pass
3 files changed, 34 insertions, 7 deletions
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/AccountsManager.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/AccountsManager.java index aab483828a..dd0c82439b 100644 --- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/AccountsManager.java +++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/AccountsManager.java @@ -15,11 +15,11 @@ import java.util.Calendar; * usage only. */ class AccountsManager { - private final static String PREFERENCE_USER_ID = "com.mapbox.mapboxsdk.accounts.userid"; - private final static String PREFERENCE_TIMESTAMP = "com.mapbox.mapboxsdk.accounts.timestamp"; - private final static String PREFERENCE_SKU_TOKEN = "com.mapbox.mapboxsdk.accounts.skutoken"; + private static final String PREFERENCE_USER_ID = "com.mapbox.mapboxsdk.accounts.userid"; + private static final String PREFERENCE_TIMESTAMP = "com.mapbox.mapboxsdk.accounts.timestamp"; + private static final String PREFERENCE_SKU_TOKEN = "com.mapbox.mapboxsdk.accounts.skutoken"; - private final static long ONE_HOUR_MILLIS = 60 * 60 * 1_000L; + static final long ONE_HOUR_MILLIS = 60 * 60 * 1_000L; private long timestamp; private String skuToken; @@ -64,7 +64,11 @@ class AccountsManager { } private boolean isExpired() { - return (getNow() - timestamp > ONE_HOUR_MILLIS); + return isExpired(getNow(), timestamp); + } + + static boolean isExpired(long now, long then) { + return ((now - then) > ONE_HOUR_MILLIS); } private long persistRotation(String skuToken) { @@ -81,7 +85,7 @@ class AccountsManager { .getSharedPreferences(MapboxConstants.MAPBOX_SHARED_PREFERENCES, Context.MODE_PRIVATE); } - private long getNow() { + static long getNow() { return Calendar.getInstance(MapboxConstants.MAPBOX_LOCALE).getTimeInMillis(); } diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/storage/FileSource.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/storage/FileSource.java index 0a5d4a8347..cc4988b549 100644 --- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/storage/FileSource.java +++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/storage/FileSource.java @@ -106,7 +106,8 @@ public class FileSource { */ @NonNull private static String getCachePath(@NonNull Context context) { - SharedPreferences preferences = context.getSharedPreferences(MapboxConstants.MAPBOX_SHARED_PREFERENCES, Context.MODE_PRIVATE); + SharedPreferences preferences = context.getSharedPreferences( + MapboxConstants.MAPBOX_SHARED_PREFERENCES, Context.MODE_PRIVATE); String cachePath = preferences.getString(MAPBOX_SHARED_PREFERENCE_RESOURCES_CACHE_PATH, null); if (!isPathWritable(cachePath)) { diff --git a/platform/android/MapboxGLAndroidSDK/src/test/java/com/mapbox/mapboxsdk/AccountsManagerTest.java b/platform/android/MapboxGLAndroidSDK/src/test/java/com/mapbox/mapboxsdk/AccountsManagerTest.java new file mode 100644 index 0000000000..bce5ad6c76 --- /dev/null +++ b/platform/android/MapboxGLAndroidSDK/src/test/java/com/mapbox/mapboxsdk/AccountsManagerTest.java @@ -0,0 +1,22 @@ +package com.mapbox.mapboxsdk; + +import org.junit.Assert; +import org.junit.Test; + +public class AccountsManagerTest { + @Test + public void testIsExpired() { + long now = AccountsManager.getNow(); + + long defaultValue = 0L; + long tooOld = now - AccountsManager.ONE_HOUR_MILLIS - 1; + long futureValue = now + 1; + long immediatePast = now - 1; + + Assert.assertTrue(AccountsManager.isExpired(now, defaultValue)); + Assert.assertTrue(AccountsManager.isExpired(now, tooOld)); + + Assert.assertFalse(AccountsManager.isExpired(now, futureValue)); + Assert.assertFalse(AccountsManager.isExpired(now, immediatePast)); + } +} |