Skip to content

Commit e256f9b

Browse files
committed
address comments
1 parent 1413741 commit e256f9b

File tree

2 files changed

+20
-15
lines changed

2 files changed

+20
-15
lines changed

AndroidSDKCore/src/main/java/com/leanplum/internal/Request.java

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -488,12 +488,10 @@ static class RequestsWithEncoding {
488488
}
489489

490490
private RequestsWithEncoding getRequestsWithEncodedStringForErrors() {
491-
492491
List<Map<String, Object>> unsentRequests = new ArrayList<>();
493492
List<Map<String, Object>> requestsToSend;
494493
String jsonEncodedRequestsToSend;
495494

496-
497495
String uuid = UUID.randomUUID().toString();
498496
for (Map<String, Object> error : localErrors) {
499497
error.put(UUID_KEY, uuid);
@@ -503,6 +501,7 @@ private RequestsWithEncoding getRequestsWithEncodedStringForErrors() {
503501
jsonEncodedRequestsToSend = jsonEncodeUnsentRequests(unsentRequests);
504502

505503
RequestsWithEncoding requestsWithEncoding = new RequestsWithEncoding();
504+
// for errors, we send all unsent requests so they are identical
506505
requestsWithEncoding.unsentRequests = unsentRequests;
507506
requestsWithEncoding.requestsToSend = requestsToSend;
508507
requestsWithEncoding.jsonEncodedString = jsonEncodedRequestsToSend;
@@ -520,7 +519,6 @@ protected RequestsWithEncoding getRequestsWithEncodedStringStoredRequests() {
520519
requestsToSend = removeIrrelevantBackgroundStartRequests(unsentRequests);
521520
jsonEncodedRequestsToSend = jsonEncodeUnsentRequests(unsentRequests);
522521

523-
524522
requestsWithEncoding.unsentRequests = unsentRequests;
525523
requestsWithEncoding.requestsToSend = requestsToSend;
526524
requestsWithEncoding.jsonEncodedString = jsonEncodedRequestsToSend;

AndroidSDKTests/src/test/java/com/leanplum/internal/RequestTest.java

Lines changed: 19 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -209,37 +209,44 @@ public void testRemoveIrrelevantBackgroundStartRequests() throws NoSuchMethodExc
209209
LeanplumEventDataManagerTest.setDatabaseToNull();
210210
}
211211

212+
// Given a list of unsent requests
213+
// we want to get the list of strings to send
214+
// We should get back the correct list of requests to send
212215
@Test
213216
public void testJsonEncodeUnsentRequests() {
214-
List<Map<String, Object>> requests = mockRequests(2, 2);
217+
List<Map<String, Object>> requests = mockRequests(4);
215218

216219
Request realRequest = new Request("POST", Constants.Methods.START, null);
217220
Request request = spy(realRequest);
218221
when(request.getUnsentRequests()).thenReturn(requests);
219222

220223
Request.RequestsWithEncoding requestsWithEncoding = request.getRequestsWithEncodedStringStoredRequests();
221224

222-
assertEquals("{\"data\":[{\"0\":\"0\"},{\"0\":\"1\"},{\"1\":\"0\"},{\"1\":\"1\"}]}", requestsWithEncoding.jsonEncodedString);
225+
assertEquals(4, requestsWithEncoding .unsentRequests.size());
226+
assertEquals(4, requestsWithEncoding .requestsToSend.size());
227+
final String expectedJson = "{\"data\":[{\"0\":\"testData\"},{\"1\":\"testData\"},{\"2\":\"testData\"},{\"3\":\"testData\"}]}";
228+
assertEquals(expectedJson, requestsWithEncoding.jsonEncodedString);
223229
}
224230

231+
// Given a list of requests
232+
// we want to encode to a JSON String
233+
// The String should have the expected format
225234
@Test
226235
public void testGetRequestsWithEncodedStringStoredRequests() {
227-
List<Map<String, Object>> requests = mockRequests(2, 2);
236+
List<Map<String, Object>> requests = mockRequests(4);
228237
String json = Request.jsonEncodeUnsentRequests(requests);
229-
String expectedJson = "{\"data\":[{\"0\":\"0\"},{\"0\":\"1\"},{\"1\":\"0\"},{\"1\":\"1\"}]}";
238+
239+
final String expectedJson = "{\"data\":[{\"0\":\"testData\"},{\"1\":\"testData\"},{\"2\":\"testData\"},{\"3\":\"testData\"}]}";
230240
assertEquals(json, expectedJson);
231241
}
232242

233-
private List<Map<String, Object>> mockRequests(int listSize, int requestSize) {
243+
private List<Map<String, Object>> mockRequests(int requestSize) {
234244
List<Map<String, Object>> requests = new ArrayList<>();
235245

236-
for (int i=0; i < listSize; i++) {
237-
238-
for (int j=0; j < requestSize; j++) {
239-
Map<String, Object> request = new HashMap<String, Object>();
240-
request.put(Integer.toString(i), Integer.toString(j));
241-
requests.add(request);
242-
}
246+
for (int i=0; i < requestSize; i++) {
247+
Map<String, Object> request = new HashMap<String, Object>();
248+
request.put(Integer.toString(i), "testData");
249+
requests.add(request);
243250
}
244251
return requests;
245252
}

0 commit comments

Comments
 (0)