Skip to content

Commit abe7f5c

Browse files
committed
Merge branch 'master' into major_release_4.0.0
2 parents 7c54348 + b3be5d2 commit abe7f5c

File tree

6 files changed

+75
-4
lines changed

6 files changed

+75
-4
lines changed

OneSignalSDK.jar

622 Bytes
Binary file not shown.

OneSignalSDK/onesignal/maven-push.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ class Global {
2424
static def POM_NAME = 'OneSignal'
2525
static def POM_ARTIFACT_ID = 'OneSignal'
2626
static def POM_PACKAGING = 'aar'
27-
static def VERSION_NAME = '3.15.4'
27+
static def VERSION_NAME = '3.15.5'
2828

2929
static def GROUP_ID = 'com.onesignal'
3030
static def POM_DESCRIPTION = 'OneSignal Android SDK'

OneSignalSDK/onesignal/src/main/java/com/onesignal/OneSignal.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -347,7 +347,7 @@ static void setInForeground(boolean inForeground) {
347347
private static TrackAmazonPurchase trackAmazonPurchase;
348348
private static TrackFirebaseAnalytics trackFirebaseAnalytics;
349349

350-
private static final String VERSION = "031504";
350+
private static final String VERSION = "031505";
351351
public static String getSdkVersionRaw() {
352352
return VERSION;
353353
}
@@ -2539,7 +2539,7 @@ public void run() {
25392539
else
25402540
runCancelNotification.run();
25412541
}
2542-
2542+
25432543
public static void removeGroupedNotifications(final String group) {
25442544
if (taskController.shouldQueueTaskForInit(OSTaskController.CANCEL_GROUPED_NOTIFICATIONS)) {
25452545
logger.error("Waiting for remote params. " +

OneSignalSDK/onesignal/src/main/java/com/onesignal/UserState.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -241,6 +241,8 @@ JSONObject generateJsonDiff(UserState newState, boolean isSessionCall) {
241241
sendJson.put("app_id", syncValues.optString("app_id"));
242242
if (syncValues.has("email_auth_hash"))
243243
sendJson.put("email_auth_hash", syncValues.optString("email_auth_hash"));
244+
if (syncValues.has("external_user_id_auth_hash"))
245+
sendJson.put("external_user_id_auth_hash", syncValues.optString("external_user_id_auth_hash"));
244246
} catch (JSONException e) {
245247
e.printStackTrace();
246248
}

OneSignalSDK/onesignal/src/main/java/com/onesignal/WebViewManager.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -311,7 +311,7 @@ private void showMessageView(@Nullable Integer newHeight) {
311311
return;
312312
}
313313

314-
OneSignal.Log(OneSignal.LOG_LEVEL.DEBUG, "In app message, showing fist one with height: " + newHeight);
314+
OneSignal.Log(OneSignal.LOG_LEVEL.DEBUG, "In app message, showing first one with height: " + newHeight);
315315
messageView.setWebView(webView);
316316
if (newHeight != null)
317317
messageView.updateHeight(newHeight);

OneSignalSDK/unittest/src/test/java/com/test/onesignal/MainOneSignalClassRunner.java

Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4328,6 +4328,75 @@ public void shouldSetExternalIdWithAuthHashBeforeRegistration() throws Exception
43284328
assertEquals(mockExternalIdHash, registrationRequest.payload.getString("external_user_id_auth_hash"));
43294329
}
43304330

4331+
@Test
4332+
public void shouldAlwaysSetExternalIdWithAuthHashAAfterRegistration() throws Exception {
4333+
OneSignalInit();
4334+
threadAndTaskWait();
4335+
4336+
String testExternalId = "test_ext_id";
4337+
String mockExternalIdHash = new String(new char[64]).replace('\0', '0');
4338+
4339+
OneSignal.setExternalUserId(testExternalId, mockExternalIdHash);
4340+
threadAndTaskWait();
4341+
4342+
ShadowOneSignalRestClient.Request registrationRequest = ShadowOneSignalRestClient.requests.get(2);
4343+
assertEquals(ShadowOneSignalRestClient.REST_METHOD.PUT, registrationRequest.method);
4344+
assertEquals(testExternalId, registrationRequest.payload.getString("external_user_id"));
4345+
assertEquals(mockExternalIdHash, registrationRequest.payload.getString("external_user_id_auth_hash"));
4346+
4347+
fastColdRestartApp();
4348+
4349+
time.advanceSystemTimeBy(60);
4350+
OneSignalInit();
4351+
threadAndTaskWait();
4352+
4353+
ShadowOneSignalRestClient.Request registrationRequestAfterColdStart = ShadowOneSignalRestClient.requests.get(4);
4354+
assertEquals(REST_METHOD.POST, registrationRequestAfterColdStart.method);
4355+
assertEquals(mockExternalIdHash, registrationRequestAfterColdStart.payload.getString("external_user_id_auth_hash"));
4356+
}
4357+
4358+
@Test
4359+
public void shouldAlwaysSetExternalIdAndEmailWithAuthHashAfterRegistration() throws Exception {
4360+
OneSignalInit();
4361+
threadAndTaskWait();
4362+
4363+
String testExternalId = "test_ext_id";
4364+
String mockExternalIdHash = new String(new char[64]).replace('\0', '0');
4365+
4366+
String email = "josh@onesignal.com";
4367+
String mockEmailHash = new String(new char[64]).replace('\0', '0');
4368+
4369+
OneSignal.setExternalUserId(testExternalId, mockExternalIdHash);
4370+
OneSignal.setEmail(email, mockEmailHash);
4371+
threadAndTaskWait();
4372+
4373+
ShadowOneSignalRestClient.Request registrationRequest = ShadowOneSignalRestClient.requests.get(2);
4374+
assertEquals(ShadowOneSignalRestClient.REST_METHOD.PUT, registrationRequest.method);
4375+
assertEquals(testExternalId, registrationRequest.payload.getString("external_user_id"));
4376+
assertEquals(mockExternalIdHash, registrationRequest.payload.getString("external_user_id_auth_hash"));
4377+
4378+
ShadowOneSignalRestClient.Request emailPost = ShadowOneSignalRestClient.requests.get(3);
4379+
assertEquals(REST_METHOD.POST, emailPost.method);
4380+
assertEquals(email, emailPost.payload.getString("identifier"));
4381+
assertEquals(11, emailPost.payload.getInt("device_type"));
4382+
assertEquals(mockEmailHash, emailPost.payload.getString("email_auth_hash"));
4383+
4384+
fastColdRestartApp();
4385+
4386+
time.advanceSystemTimeBy(60);
4387+
OneSignalInit();
4388+
threadAndTaskWait();
4389+
4390+
ShadowOneSignalRestClient.Request registrationRequestAfterColdStart = ShadowOneSignalRestClient.requests.get(6);
4391+
assertEquals(REST_METHOD.POST, registrationRequestAfterColdStart.method);
4392+
assertEquals(mockExternalIdHash, registrationRequestAfterColdStart.payload.getString("external_user_id_auth_hash"));
4393+
4394+
ShadowOneSignalRestClient.Request emailPostAfterColdStart = ShadowOneSignalRestClient.requests.get(7);
4395+
assertEquals(REST_METHOD.POST, emailPostAfterColdStart.method);
4396+
assertEquals(11, emailPostAfterColdStart.payload.getInt("device_type"));
4397+
assertEquals(mockEmailHash, emailPostAfterColdStart.payload.getString("email_auth_hash"));
4398+
}
4399+
43314400
@Test
43324401
public void shouldRemoveExternalUserId() throws Exception {
43334402
OneSignal.setExternalUserId("test_ext_id");

0 commit comments

Comments
 (0)