From 173fd04387c3b047bbb23d28d2cef2c8a20fda36 Mon Sep 17 00:00:00 2001 From: Evan Greer Date: Tue, 24 Oct 2023 18:03:32 -0600 Subject: [PATCH 01/11] adds logic to add query parameters when placement ids are passed as arguments --- .../com/iterable/iterableapi/IterableApi.java | 8 ++-- .../iterableapi/IterableApiClient.java | 40 ++++++++++++++++--- .../iterableapi/IterableEmbeddedManager.kt | 2 +- 3 files changed, 40 insertions(+), 10 deletions(-) diff --git a/iterableapi/src/main/java/com/iterable/iterableapi/IterableApi.java b/iterableapi/src/main/java/com/iterable/iterableapi/IterableApi.java index 5f0fba8b8..b91dbc188 100644 --- a/iterableapi/src/main/java/com/iterable/iterableapi/IterableApi.java +++ b/iterableapi/src/main/java/com/iterable/iterableapi/IterableApi.java @@ -234,18 +234,18 @@ void getInAppMessages(int count, @NonNull IterableHelper.IterableActionHandler o * * @param onCallback */ - void getEmbeddedMessages(@NonNull IterableHelper.IterableActionHandler onCallback) { + void getEmbeddedMessages(@Nullable String[] placementIds, @NonNull IterableHelper.IterableActionHandler onCallback) { if (!checkSDKInitialization()) { return; } - apiClient.getEmbeddedMessages(onCallback); + apiClient.getEmbeddedMessages(placementIds, onCallback); } - void getEmbeddedMessages(@NonNull IterableHelper.SuccessHandler onSuccess, @NonNull IterableHelper.FailureHandler onFailure) { + void getEmbeddedMessages(@Nullable String[] placementIds, @NonNull IterableHelper.SuccessHandler onSuccess, @NonNull IterableHelper.FailureHandler onFailure) { if (!checkSDKInitialization()) { return; } - apiClient.getEmbeddedMessages(onSuccess, onFailure); + apiClient.getEmbeddedMessages(placementIds, onSuccess, onFailure); } /** diff --git a/iterableapi/src/main/java/com/iterable/iterableapi/IterableApiClient.java b/iterableapi/src/main/java/com/iterable/iterableapi/IterableApiClient.java index 9b05cb627..2b32ea804 100644 --- a/iterableapi/src/main/java/com/iterable/iterableapi/IterableApiClient.java +++ b/iterableapi/src/main/java/com/iterable/iterableapi/IterableApiClient.java @@ -16,6 +16,7 @@ import java.util.Arrays; import java.util.HashMap; import java.util.List; +import java.util.stream.Collectors; class IterableApiClient { private static final String TAG = "IterableApiClient"; @@ -217,7 +218,7 @@ public void getInAppMessages(int count, @NonNull IterableHelper.IterableActionHa } } - void getEmbeddedMessages(@NonNull IterableHelper.IterableActionHandler onCallback) { + void getEmbeddedMessages(@Nullable String[] placementIds, @NonNull IterableHelper.IterableActionHandler onCallback) { JSONObject requestJSON = new JSONObject(); try { @@ -226,15 +227,29 @@ void getEmbeddedMessages(@NonNull IterableHelper.IterableActionHandler onCallbac requestJSON.put(IterableConstants.ITBL_KEY_SDK_VERSION, IterableConstants.ITBL_KEY_SDK_VERSION_NUMBER); requestJSON.put(IterableConstants.ITBL_SYSTEM_VERSION, Build.VERSION.RELEASE); requestJSON.put(IterableConstants.KEY_PACKAGE_NAME, authProvider.getContext().getPackageName()); - requestJSON.put("placementId", "0"); - sendGetRequest(IterableConstants.ENDPOINT_GET_EMBEDDED_MESSAGES, requestJSON, onCallback); + StringBuilder pathBuilder = new StringBuilder(IterableConstants.ENDPOINT_GET_EMBEDDED_MESSAGES + "?"); + + if (authProvider.getEmail() != null) { + pathBuilder.append("&").append(authProvider.getEmail()); + } else { + pathBuilder.append("&").append(authProvider.getUserId()); + } + + if (placementIds != null) { + for(String placementId : placementIds) { + pathBuilder.append("&").append(placementId); + } + } + + String path = pathBuilder.toString(); + sendGetRequest(path, requestJSON, onCallback); } catch (JSONException e) { e.printStackTrace(); } } - void getEmbeddedMessages(@NonNull IterableHelper.SuccessHandler onSuccess, @NonNull IterableHelper.FailureHandler onFailure) { + void getEmbeddedMessages(@Nullable String[] placementIds, @NonNull IterableHelper.SuccessHandler onSuccess, @NonNull IterableHelper.FailureHandler onFailure) { JSONObject requestJSON = new JSONObject(); try { @@ -245,7 +260,22 @@ void getEmbeddedMessages(@NonNull IterableHelper.SuccessHandler onSuccess, @NonN requestJSON.put(IterableConstants.KEY_PACKAGE_NAME, authProvider.getContext().getPackageName()); requestJSON.put("placementId", "0"); - sendGetRequest(IterableConstants.ENDPOINT_GET_EMBEDDED_MESSAGES, requestJSON, onSuccess, onFailure); + StringBuilder pathBuilder = new StringBuilder(IterableConstants.ENDPOINT_GET_EMBEDDED_MESSAGES + "?"); + + if (authProvider.getEmail() != null) { + pathBuilder.append("&").append(authProvider.getEmail()); + } else { + pathBuilder.append("&").append(authProvider.getUserId()); + } + + if (placementIds != null) { + for(String placementId : placementIds) { + pathBuilder.append("&").append(placementId); + } + } + + String path = pathBuilder.toString(); + sendGetRequest(path, requestJSON, onSuccess, onFailure); } catch (JSONException e) { e.printStackTrace(); } diff --git a/iterableapi/src/main/java/com/iterable/iterableapi/IterableEmbeddedManager.kt b/iterableapi/src/main/java/com/iterable/iterableapi/IterableEmbeddedManager.kt index af686e120..eebab3b87 100644 --- a/iterableapi/src/main/java/com/iterable/iterableapi/IterableEmbeddedManager.kt +++ b/iterableapi/src/main/java/com/iterable/iterableapi/IterableEmbeddedManager.kt @@ -89,7 +89,7 @@ public class IterableEmbeddedManager : IterableActivityMonitor.AppStateCallback fun syncMessages() { IterableLogger.v(TAG, "Syncing messages...") - IterableApi.sharedInstance.getEmbeddedMessages(SuccessHandler { data -> + IterableApi.sharedInstance.getEmbeddedMessages(null, SuccessHandler { data -> IterableLogger.v(TAG, "Got response from network call to get embedded messages") try { val placementsArray = data.optJSONArray(IterableConstants.ITERABLE_EMBEDDED_MESSAGE_PLACEMENTS) From 85dd6db06c616133f07298b3d4491927665f0a0a Mon Sep 17 00:00:00 2001 From: Evan Greer Date: Wed, 25 Oct 2023 12:53:13 -0600 Subject: [PATCH 02/11] stashed changes --- .../iterable/iterableapi/IterableApiClient.java | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/iterableapi/src/main/java/com/iterable/iterableapi/IterableApiClient.java b/iterableapi/src/main/java/com/iterable/iterableapi/IterableApiClient.java index 2b32ea804..791cf714c 100644 --- a/iterableapi/src/main/java/com/iterable/iterableapi/IterableApiClient.java +++ b/iterableapi/src/main/java/com/iterable/iterableapi/IterableApiClient.java @@ -231,18 +231,19 @@ void getEmbeddedMessages(@Nullable String[] placementIds, @NonNull IterableHelpe StringBuilder pathBuilder = new StringBuilder(IterableConstants.ENDPOINT_GET_EMBEDDED_MESSAGES + "?"); if (authProvider.getEmail() != null) { - pathBuilder.append("&").append(authProvider.getEmail()); + pathBuilder.append("email=").append(authProvider.getEmail()); } else { - pathBuilder.append("&").append(authProvider.getUserId()); + pathBuilder.append("userId=").append(authProvider.getUserId()); } if (placementIds != null) { for(String placementId : placementIds) { - pathBuilder.append("&").append(placementId); + pathBuilder.append("&placementIds=").append(placementId); } } String path = pathBuilder.toString(); + IterableLogger.d("IterableApiClient", path); sendGetRequest(path, requestJSON, onCallback); } catch (JSONException e) { e.printStackTrace(); @@ -263,18 +264,19 @@ void getEmbeddedMessages(@Nullable String[] placementIds, @NonNull IterableHelpe StringBuilder pathBuilder = new StringBuilder(IterableConstants.ENDPOINT_GET_EMBEDDED_MESSAGES + "?"); if (authProvider.getEmail() != null) { - pathBuilder.append("&").append(authProvider.getEmail()); + pathBuilder.append("email=").append(authProvider.getEmail()); } else { - pathBuilder.append("&").append(authProvider.getUserId()); + pathBuilder.append("userId=").append(authProvider.getUserId()); } if (placementIds != null) { for(String placementId : placementIds) { - pathBuilder.append("&").append(placementId); + pathBuilder.append("&placementIds=").append(placementId); } } String path = pathBuilder.toString(); + IterableLogger.d("IterableApiClient", path); sendGetRequest(path, requestJSON, onSuccess, onFailure); } catch (JSONException e) { e.printStackTrace(); From fe453142028361f9d7a9d14d28ce009810f7aca3 Mon Sep 17 00:00:00 2001 From: Evan Greer Date: Thu, 26 Oct 2023 19:41:14 -0600 Subject: [PATCH 03/11] stashed changes --- app/build.gradle | 1 + iterableapi/build.gradle | 1 + .../IterableEmbeddedManagerTest.kt | 38 +++++++++++++++++++ 3 files changed, 40 insertions(+) create mode 100644 iterableapi/src/test/java/com/iterable/iterableapi/IterableEmbeddedManagerTest.kt diff --git a/app/build.gradle b/app/build.gradle index 30368e233..979cbf859 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -60,6 +60,7 @@ dependencies { testImplementation 'org.robolectric:robolectric:4.3.1' testImplementation 'org.robolectric:shadows-playservices:4.3.1' testImplementation 'com.squareup.okhttp3:mockwebserver:4.2.2' + testImplementation 'org.junit.jupiter:junit-jupiter:5.8.0-M1' androidTestImplementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" androidTestImplementation 'androidx.test:runner:1.2.0' androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0' diff --git a/iterableapi/build.gradle b/iterableapi/build.gradle index 4d403ca91..26110230f 100644 --- a/iterableapi/build.gradle +++ b/iterableapi/build.gradle @@ -52,6 +52,7 @@ dependencies { testImplementation 'org.khronos:opengl-api:gl1.1-android-2.1_r1' testImplementation 'com.squareup.okhttp3:mockwebserver:4.2.2' testImplementation 'org.skyscreamer:jsonassert:1.5.0' + testImplementation project(path: ':iterableapi') androidTestImplementation 'androidx.test:runner:1.3.0' androidTestImplementation 'androidx.test:rules:1.3.0' diff --git a/iterableapi/src/test/java/com/iterable/iterableapi/IterableEmbeddedManagerTest.kt b/iterableapi/src/test/java/com/iterable/iterableapi/IterableEmbeddedManagerTest.kt new file mode 100644 index 000000000..dc8531b09 --- /dev/null +++ b/iterableapi/src/test/java/com/iterable/iterableapi/IterableEmbeddedManagerTest.kt @@ -0,0 +1,38 @@ +package com.iterable.iterableapi + +import com.iterable.iterableapi.unit.PathBasedQueueDispatcher +import okhttp3.mockwebserver.MockWebServer +import org.junit.After +import org.junit.Before +import org.junit.Test +import org.robolectric.android.util.concurrent.PausedExecutorService + +public class IterableEmbeddedManagerTest { + + private var server: MockWebServer? = null + private lateinit var dispatcher: PathBasedQueueDispatcher + private var backgroundExecutor: PausedExecutorService? = null + + @Before + fun setUp() { + backgroundExecutor = PausedExecutorService() + server = MockWebServer() + dispatcher = PathBasedQueueDispatcher() + server!!.dispatcher = dispatcher + + IterableApi.overrideURLEndpointPath(server!!.url("").toString()) + IterableApi.sharedInstance = IterableApi() + + } + + @After + fun tearDown() { + server!!.shutdown() + server = null + } + + @Test + fun testSyncEmbedded() { + + } +} \ No newline at end of file From f0311364c0dd09ad4f051284f4ed1b4842f4e40a Mon Sep 17 00:00:00 2001 From: Evan Greer Date: Mon, 27 Nov 2023 15:43:38 -0700 Subject: [PATCH 04/11] adds public methods for get messages for specific ids --- .../com/iterable/iterableapi/IterableApi.java | 39 ++++++++++++++++--- .../iterableapi/IterableApiClient.java | 1 - .../iterableapi/IterableEmbeddedManager.kt | 2 +- 3 files changed, 34 insertions(+), 8 deletions(-) diff --git a/iterableapi/src/main/java/com/iterable/iterableapi/IterableApi.java b/iterableapi/src/main/java/com/iterable/iterableapi/IterableApi.java index b91dbc188..310afb230 100644 --- a/iterableapi/src/main/java/com/iterable/iterableapi/IterableApi.java +++ b/iterableapi/src/main/java/com/iterable/iterableapi/IterableApi.java @@ -227,27 +227,54 @@ void getInAppMessages(int count, @NonNull IterableHelper.IterableActionHandler o } /** - * A package-private method to get a list of Embedded Messages from Iterable; - * Passes the result to the callback. - * To get list of messages as a list of EmbeddedMessages in memory, use - * {@link IterableEmbeddedManager#getEmbeddedMessages()} instead + * Gets a list of placements for the list of placement ids passed in from Iterable; + * passes the result to the callback. * + * @param placementIds array of placement ids * @param onCallback */ - void getEmbeddedMessages(@Nullable String[] placementIds, @NonNull IterableHelper.IterableActionHandler onCallback) { + + public void getEmbeddedMessages(@Nullable String[] placementIds, @NonNull IterableHelper.IterableActionHandler onCallback) { if (!checkSDKInitialization()) { return; } apiClient.getEmbeddedMessages(placementIds, onCallback); } - void getEmbeddedMessages(@Nullable String[] placementIds, @NonNull IterableHelper.SuccessHandler onSuccess, @NonNull IterableHelper.FailureHandler onFailure) { + /** + * Gets a list of placements for the list of placement ids passed in from Iterable; + * passes the result to the success or failure callback. + * + * @param placementIds + * @param onSuccess + * @param onFailure + */ + + public void getEmbeddedMessages(@Nullable String[] placementIds, @NonNull IterableHelper.SuccessHandler onSuccess, @NonNull IterableHelper.FailureHandler onFailure) { if (!checkSDKInitialization()) { return; } apiClient.getEmbeddedMessages(placementIds, onSuccess, onFailure); } + /** + * A package-private method to get a list of Embedded Messages from Iterable; + * Passes the result to the success or failure callback. + * Used by the IterableEmbeddedManager. + * + * To get list of messages as a list of EmbeddedMessages in memory, use + * {@link IterableEmbeddedManager#getMessages(String)} instead + * + * @param onSuccess + * @param onFailure + */ + void getEmbeddedMessages(@NonNull IterableHelper.SuccessHandler onSuccess, @NonNull IterableHelper.FailureHandler onFailure) { + if (!checkSDKInitialization()) { + return; + } + apiClient.getEmbeddedMessages(null, onSuccess, onFailure); + } + /** * Tracks in-app delivery events (per in-app) * @param message the in-app message to be tracked as delivered */ diff --git a/iterableapi/src/main/java/com/iterable/iterableapi/IterableApiClient.java b/iterableapi/src/main/java/com/iterable/iterableapi/IterableApiClient.java index 791cf714c..273a06418 100644 --- a/iterableapi/src/main/java/com/iterable/iterableapi/IterableApiClient.java +++ b/iterableapi/src/main/java/com/iterable/iterableapi/IterableApiClient.java @@ -243,7 +243,6 @@ void getEmbeddedMessages(@Nullable String[] placementIds, @NonNull IterableHelpe } String path = pathBuilder.toString(); - IterableLogger.d("IterableApiClient", path); sendGetRequest(path, requestJSON, onCallback); } catch (JSONException e) { e.printStackTrace(); diff --git a/iterableapi/src/main/java/com/iterable/iterableapi/IterableEmbeddedManager.kt b/iterableapi/src/main/java/com/iterable/iterableapi/IterableEmbeddedManager.kt index eebab3b87..af686e120 100644 --- a/iterableapi/src/main/java/com/iterable/iterableapi/IterableEmbeddedManager.kt +++ b/iterableapi/src/main/java/com/iterable/iterableapi/IterableEmbeddedManager.kt @@ -89,7 +89,7 @@ public class IterableEmbeddedManager : IterableActivityMonitor.AppStateCallback fun syncMessages() { IterableLogger.v(TAG, "Syncing messages...") - IterableApi.sharedInstance.getEmbeddedMessages(null, SuccessHandler { data -> + IterableApi.sharedInstance.getEmbeddedMessages(SuccessHandler { data -> IterableLogger.v(TAG, "Got response from network call to get embedded messages") try { val placementsArray = data.optJSONArray(IterableConstants.ITERABLE_EMBEDDED_MESSAGE_PLACEMENTS) From d5f0743c409102a29b121204178fcd1b25d2bc89 Mon Sep 17 00:00:00 2001 From: Evan Greer Date: Mon, 27 Nov 2023 17:05:57 -0700 Subject: [PATCH 05/11] stashed changes --- .../main/java/com/iterable/iterableapi/IterableApi.java | 6 +++--- .../java/com/iterable/iterableapi/IterableApiClient.java | 8 ++++---- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/iterableapi/src/main/java/com/iterable/iterableapi/IterableApi.java b/iterableapi/src/main/java/com/iterable/iterableapi/IterableApi.java index 9ac1ae418..36faba06d 100644 --- a/iterableapi/src/main/java/com/iterable/iterableapi/IterableApi.java +++ b/iterableapi/src/main/java/com/iterable/iterableapi/IterableApi.java @@ -248,7 +248,7 @@ void getInAppMessages(int count, @NonNull IterableHelper.IterableActionHandler o * @param onCallback */ - public void getEmbeddedMessages(@Nullable String[] placementIds, @NonNull IterableHelper.IterableActionHandler onCallback) { + public void getEmbeddedMessages(@Nullable Long[] placementIds, @NonNull IterableHelper.IterableActionHandler onCallback) { if (!checkSDKInitialization()) { return; } @@ -264,7 +264,7 @@ public void getEmbeddedMessages(@Nullable String[] placementIds, @NonNull Iterab * @param onFailure */ - public void getEmbeddedMessages(@Nullable String[] placementIds, @NonNull IterableHelper.SuccessHandler onSuccess, @NonNull IterableHelper.FailureHandler onFailure) { + public void getEmbeddedMessages(@Nullable Long[] placementIds, @NonNull IterableHelper.SuccessHandler onSuccess, @NonNull IterableHelper.FailureHandler onFailure) { if (!checkSDKInitialization()) { return; } @@ -277,7 +277,7 @@ public void getEmbeddedMessages(@Nullable String[] placementIds, @NonNull Iterab * Used by the IterableEmbeddedManager. * * To get list of messages as a list of EmbeddedMessages in memory, use - * {@link IterableEmbeddedManager#getMessages(String)} instead + * {@link IterableEmbeddedManager#getMessages(Long)} instead * * @param onSuccess * @param onFailure diff --git a/iterableapi/src/main/java/com/iterable/iterableapi/IterableApiClient.java b/iterableapi/src/main/java/com/iterable/iterableapi/IterableApiClient.java index 87b53b8ae..c7bec1c54 100644 --- a/iterableapi/src/main/java/com/iterable/iterableapi/IterableApiClient.java +++ b/iterableapi/src/main/java/com/iterable/iterableapi/IterableApiClient.java @@ -218,7 +218,7 @@ public void getInAppMessages(int count, @NonNull IterableHelper.IterableActionHa } } - void getEmbeddedMessages(@Nullable String[] placementIds, @NonNull IterableHelper.IterableActionHandler onCallback) { + void getEmbeddedMessages(@Nullable Long[] placementIds, @NonNull IterableHelper.IterableActionHandler onCallback) { JSONObject requestJSON = new JSONObject(); try { @@ -237,7 +237,7 @@ void getEmbeddedMessages(@Nullable String[] placementIds, @NonNull IterableHelpe } if (placementIds != null) { - for(String placementId : placementIds) { + for(Long placementId : placementIds) { pathBuilder.append("&placementIds=").append(placementId); } } @@ -249,7 +249,7 @@ void getEmbeddedMessages(@Nullable String[] placementIds, @NonNull IterableHelpe } } - void getEmbeddedMessages(@Nullable String[] placementIds, @NonNull IterableHelper.SuccessHandler onSuccess, @NonNull IterableHelper.FailureHandler onFailure) { + void getEmbeddedMessages(@Nullable Long[] placementIds, @NonNull IterableHelper.SuccessHandler onSuccess, @NonNull IterableHelper.FailureHandler onFailure) { JSONObject requestJSON = new JSONObject(); try { @@ -269,7 +269,7 @@ void getEmbeddedMessages(@Nullable String[] placementIds, @NonNull IterableHelpe } if (placementIds != null) { - for(String placementId : placementIds) { + for(Long placementId : placementIds) { pathBuilder.append("&placementIds=").append(placementId); } } From 4b617db2a5c69249393da832c6276416a3673288 Mon Sep 17 00:00:00 2001 From: Evan Greer Date: Thu, 30 Nov 2023 11:29:50 -0700 Subject: [PATCH 06/11] minor edits --- .../src/main/java/com/iterable/iterableapi/IterableApi.java | 2 +- .../java/com/iterable/iterableapi/IterableEmbeddedManager.kt | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/iterableapi/src/main/java/com/iterable/iterableapi/IterableApi.java b/iterableapi/src/main/java/com/iterable/iterableapi/IterableApi.java index 36faba06d..325c10894 100644 --- a/iterableapi/src/main/java/com/iterable/iterableapi/IterableApi.java +++ b/iterableapi/src/main/java/com/iterable/iterableapi/IterableApi.java @@ -269,7 +269,7 @@ public void getEmbeddedMessages(@Nullable Long[] placementIds, @NonNull Iterable return; } apiClient.getEmbeddedMessages(placementIds, onSuccess, onFailure); - } + }q /** * A package-private method to get a list of Embedded Messages from Iterable; diff --git a/iterableapi/src/main/java/com/iterable/iterableapi/IterableEmbeddedManager.kt b/iterableapi/src/main/java/com/iterable/iterableapi/IterableEmbeddedManager.kt index a22e675b8..7b1a9a43f 100644 --- a/iterableapi/src/main/java/com/iterable/iterableapi/IterableEmbeddedManager.kt +++ b/iterableapi/src/main/java/com/iterable/iterableapi/IterableEmbeddedManager.kt @@ -88,6 +88,8 @@ public class IterableEmbeddedManager : IterableActivityMonitor.AppStateCallback fun syncMessages() { IterableLogger.v(TAG, "Syncing messages...") + //var testPlacements: Array = arrayOf(83, 84) + IterableApi.sharedInstance.getEmbeddedMessages(SuccessHandler { data -> IterableLogger.v(TAG, "Got response from network call to get embedded messages") try { From a49c20c9d61e1ab71f5e26f2d5df2b752cae34b2 Mon Sep 17 00:00:00 2001 From: Evan Greer Date: Thu, 30 Nov 2023 11:40:33 -0700 Subject: [PATCH 07/11] clean up --- app/build.gradle | 1 - iterableapi/build.gradle | 1 - .../com/iterable/iterableapi/IterableApi.java | 2 +- .../iterableapi/IterableEmbeddedManager.kt | 4 +- .../IterableEmbeddedManagerTest.kt | 38 ------------------- 5 files changed, 3 insertions(+), 43 deletions(-) delete mode 100644 iterableapi/src/test/java/com/iterable/iterableapi/IterableEmbeddedManagerTest.kt diff --git a/app/build.gradle b/app/build.gradle index fc34539f5..5ee160ad8 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -64,7 +64,6 @@ dependencies { testImplementation 'org.robolectric:robolectric:4.3.1' testImplementation 'org.robolectric:shadows-playservices:4.3.1' testImplementation 'com.squareup.okhttp3:mockwebserver:4.2.2' - testImplementation 'org.junit.jupiter:junit-jupiter:5.8.0-M1' androidTestImplementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" androidTestImplementation 'androidx.test:runner:1.2.0' androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0' diff --git a/iterableapi/build.gradle b/iterableapi/build.gradle index 06588d20f..6a1d29aca 100644 --- a/iterableapi/build.gradle +++ b/iterableapi/build.gradle @@ -61,7 +61,6 @@ dependencies { testImplementation 'org.khronos:opengl-api:gl1.1-android-2.1_r1' testImplementation 'com.squareup.okhttp3:mockwebserver:4.2.2' testImplementation 'org.skyscreamer:jsonassert:1.5.0' - testImplementation project(path: ':iterableapi') androidTestImplementation 'androidx.test:runner:1.3.0' androidTestImplementation 'androidx.test:rules:1.3.0' diff --git a/iterableapi/src/main/java/com/iterable/iterableapi/IterableApi.java b/iterableapi/src/main/java/com/iterable/iterableapi/IterableApi.java index 325c10894..36faba06d 100644 --- a/iterableapi/src/main/java/com/iterable/iterableapi/IterableApi.java +++ b/iterableapi/src/main/java/com/iterable/iterableapi/IterableApi.java @@ -269,7 +269,7 @@ public void getEmbeddedMessages(@Nullable Long[] placementIds, @NonNull Iterable return; } apiClient.getEmbeddedMessages(placementIds, onSuccess, onFailure); - }q + } /** * A package-private method to get a list of Embedded Messages from Iterable; diff --git a/iterableapi/src/main/java/com/iterable/iterableapi/IterableEmbeddedManager.kt b/iterableapi/src/main/java/com/iterable/iterableapi/IterableEmbeddedManager.kt index 7b1a9a43f..1c0098aea 100644 --- a/iterableapi/src/main/java/com/iterable/iterableapi/IterableEmbeddedManager.kt +++ b/iterableapi/src/main/java/com/iterable/iterableapi/IterableEmbeddedManager.kt @@ -88,9 +88,9 @@ public class IterableEmbeddedManager : IterableActivityMonitor.AppStateCallback fun syncMessages() { IterableLogger.v(TAG, "Syncing messages...") - //var testPlacements: Array = arrayOf(83, 84) + var testPlacements: Array = arrayOf(83) - IterableApi.sharedInstance.getEmbeddedMessages(SuccessHandler { data -> + IterableApi.sharedInstance.getEmbeddedMessages(testPlacements,SuccessHandler { data -> IterableLogger.v(TAG, "Got response from network call to get embedded messages") try { val placementsArray = data.optJSONArray(IterableConstants.ITERABLE_EMBEDDED_MESSAGE_PLACEMENTS) diff --git a/iterableapi/src/test/java/com/iterable/iterableapi/IterableEmbeddedManagerTest.kt b/iterableapi/src/test/java/com/iterable/iterableapi/IterableEmbeddedManagerTest.kt deleted file mode 100644 index dc8531b09..000000000 --- a/iterableapi/src/test/java/com/iterable/iterableapi/IterableEmbeddedManagerTest.kt +++ /dev/null @@ -1,38 +0,0 @@ -package com.iterable.iterableapi - -import com.iterable.iterableapi.unit.PathBasedQueueDispatcher -import okhttp3.mockwebserver.MockWebServer -import org.junit.After -import org.junit.Before -import org.junit.Test -import org.robolectric.android.util.concurrent.PausedExecutorService - -public class IterableEmbeddedManagerTest { - - private var server: MockWebServer? = null - private lateinit var dispatcher: PathBasedQueueDispatcher - private var backgroundExecutor: PausedExecutorService? = null - - @Before - fun setUp() { - backgroundExecutor = PausedExecutorService() - server = MockWebServer() - dispatcher = PathBasedQueueDispatcher() - server!!.dispatcher = dispatcher - - IterableApi.overrideURLEndpointPath(server!!.url("").toString()) - IterableApi.sharedInstance = IterableApi() - - } - - @After - fun tearDown() { - server!!.shutdown() - server = null - } - - @Test - fun testSyncEmbedded() { - - } -} \ No newline at end of file From 27331cecc215b84e374e53692031cf50ebe52bc3 Mon Sep 17 00:00:00 2001 From: Evan Greer Date: Thu, 30 Nov 2023 11:42:39 -0700 Subject: [PATCH 08/11] comments out test placements --- .../java/com/iterable/iterableapi/IterableEmbeddedManager.kt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/iterableapi/src/main/java/com/iterable/iterableapi/IterableEmbeddedManager.kt b/iterableapi/src/main/java/com/iterable/iterableapi/IterableEmbeddedManager.kt index 1c0098aea..d0b5b8a79 100644 --- a/iterableapi/src/main/java/com/iterable/iterableapi/IterableEmbeddedManager.kt +++ b/iterableapi/src/main/java/com/iterable/iterableapi/IterableEmbeddedManager.kt @@ -88,9 +88,9 @@ public class IterableEmbeddedManager : IterableActivityMonitor.AppStateCallback fun syncMessages() { IterableLogger.v(TAG, "Syncing messages...") - var testPlacements: Array = arrayOf(83) + //var testPlacements: Array = arrayOf(83) - IterableApi.sharedInstance.getEmbeddedMessages(testPlacements,SuccessHandler { data -> + IterableApi.sharedInstance.getEmbeddedMessages(SuccessHandler { data -> IterableLogger.v(TAG, "Got response from network call to get embedded messages") try { val placementsArray = data.optJSONArray(IterableConstants.ITERABLE_EMBEDDED_MESSAGE_PLACEMENTS) From 476b8a8f918f185c50d003efe0c098bbed1e5632 Mon Sep 17 00:00:00 2001 From: Evan Greer Date: Fri, 1 Dec 2023 06:55:33 -0700 Subject: [PATCH 09/11] stashed changes --- .../java/com/iterable/iterableapi/IterableEmbeddedManager.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/iterableapi/src/main/java/com/iterable/iterableapi/IterableEmbeddedManager.kt b/iterableapi/src/main/java/com/iterable/iterableapi/IterableEmbeddedManager.kt index d0b5b8a79..2ca5d7af3 100644 --- a/iterableapi/src/main/java/com/iterable/iterableapi/IterableEmbeddedManager.kt +++ b/iterableapi/src/main/java/com/iterable/iterableapi/IterableEmbeddedManager.kt @@ -80,7 +80,7 @@ public class IterableEmbeddedManager : IterableActivityMonitor.AppStateCallback } } - private fun getPlacementIds(): List { + fun getPlacementIds(): List { return placementIds } From d5f42f907ec1c74dc7c3118d69a99295d63a60cc Mon Sep 17 00:00:00 2001 From: Evan Greer Date: Mon, 4 Dec 2023 13:50:03 -0700 Subject: [PATCH 10/11] resolves checks --- .../java/com/iterable/iterableapi/IterableApiClient.java | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/iterableapi/src/main/java/com/iterable/iterableapi/IterableApiClient.java b/iterableapi/src/main/java/com/iterable/iterableapi/IterableApiClient.java index c7bec1c54..2b20a4996 100644 --- a/iterableapi/src/main/java/com/iterable/iterableapi/IterableApiClient.java +++ b/iterableapi/src/main/java/com/iterable/iterableapi/IterableApiClient.java @@ -16,7 +16,6 @@ import java.util.Arrays; import java.util.HashMap; import java.util.List; -import java.util.stream.Collectors; class IterableApiClient { private static final String TAG = "IterableApiClient"; @@ -237,7 +236,7 @@ void getEmbeddedMessages(@Nullable Long[] placementIds, @NonNull IterableHelper. } if (placementIds != null) { - for(Long placementId : placementIds) { + for (Long placementId : placementIds) { pathBuilder.append("&placementIds=").append(placementId); } } @@ -269,7 +268,7 @@ void getEmbeddedMessages(@Nullable Long[] placementIds, @NonNull IterableHelper. } if (placementIds != null) { - for(Long placementId : placementIds) { + for (Long placementId : placementIds) { pathBuilder.append("&placementIds=").append(placementId); } } From 3426a7403b0c32c4aec9248349fc052a51cfed1f Mon Sep 17 00:00:00 2001 From: Evan Greer Date: Mon, 4 Dec 2023 15:18:07 -0700 Subject: [PATCH 11/11] minor cleanup --- .../java/com/iterable/iterableapi/IterableEmbeddedManager.kt | 1 - 1 file changed, 1 deletion(-) diff --git a/iterableapi/src/main/java/com/iterable/iterableapi/IterableEmbeddedManager.kt b/iterableapi/src/main/java/com/iterable/iterableapi/IterableEmbeddedManager.kt index 2ca5d7af3..f06430258 100644 --- a/iterableapi/src/main/java/com/iterable/iterableapi/IterableEmbeddedManager.kt +++ b/iterableapi/src/main/java/com/iterable/iterableapi/IterableEmbeddedManager.kt @@ -15,7 +15,6 @@ public class IterableEmbeddedManager : IterableActivityMonitor.AppStateCallback private var localPlacementMessagesMap = mutableMapOf>() private var placementIds = mutableListOf() - private var localMessages: List = ArrayList() private var updateHandleListeners = mutableListOf() private var iterableApi: IterableApi private var context: Context