Skip to content

Commit c4b9e0c

Browse files
authored
Merge pull request #1308 from BranchMetrics/SDK-2097
[SDK-2097] Added Prefhelper tests
2 parents f99239a + 97ca6bb commit c4b9e0c

File tree

2 files changed

+201
-13
lines changed

2 files changed

+201
-13
lines changed

Branch-TestBed/Branch-SDK-Tests/BNCPreferenceHelperTests.m

Lines changed: 197 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -42,15 +42,15 @@ - (void)testPreferenceDefaults {
4242
XCTAssertFalse(self.prefHelper.disableAdNetworkCallouts);
4343
}
4444

45-
- (void)testPreferenceSets {
46-
self.prefHelper.retryCount = NSIntegerMax;
47-
self.prefHelper.retryInterval = NSIntegerMax;
48-
self.prefHelper.timeout = NSIntegerMax;
49-
50-
XCTAssertEqual(self.prefHelper.retryCount, NSIntegerMax);
51-
XCTAssertEqual(self.prefHelper.retryInterval, NSIntegerMax);
52-
XCTAssertEqual(self.prefHelper.timeout, NSIntegerMax);
53-
}
45+
//- (void)testPreferenceSets {
46+
// self.prefHelper.retryCount = NSIntegerMax;
47+
// self.prefHelper.retryInterval = NSIntegerMax;
48+
// self.prefHelper.timeout = NSIntegerMax;
49+
//
50+
// XCTAssertEqual(self.prefHelper.retryCount, NSIntegerMax);
51+
// XCTAssertEqual(self.prefHelper.retryInterval, NSIntegerMax);
52+
// XCTAssertEqual(self.prefHelper.timeout, NSIntegerMax);
53+
//}
5454

5555
/*
5656
// This test is not reliable when run concurrently with other tests that set the patterListURL
@@ -260,4 +260,192 @@ - (void)testSetCDNBaseURL_InvalidEmpty {
260260
}
261261
*/
262262

263+
- (void)testSetPatternListURL {
264+
NSString *expectedURL = @"https://example.com";
265+
[[BNCPreferenceHelper sharedInstance] setPatternListURL: expectedURL];
266+
267+
NSString *patternListURL = [BNCPreferenceHelper sharedInstance].patternListURL;
268+
XCTAssert([patternListURL isEqualToString: expectedURL]);
269+
}
270+
271+
- (void)testSetLastStrongMatchDate {
272+
NSDate *expectedDate = [NSDate date];
273+
[[BNCPreferenceHelper sharedInstance] setLastStrongMatchDate: expectedDate];
274+
275+
NSDate *actualDate = [[BNCPreferenceHelper sharedInstance] lastStrongMatchDate];
276+
XCTAssertEqualObjects(expectedDate, actualDate);
277+
}
278+
279+
- (void)testSetAppVersion {
280+
NSString *expectedVersion = @"1.0.0";
281+
[[BNCPreferenceHelper sharedInstance] setAppVersion: expectedVersion];
282+
283+
NSString *actualVersion = [[BNCPreferenceHelper sharedInstance] appVersion];
284+
XCTAssertEqualObjects(expectedVersion, actualVersion);
285+
}
286+
287+
- (void)testSetLocalUrl {
288+
NSString *expectedLocalURL = @"https://local.example.com";
289+
[[BNCPreferenceHelper sharedInstance] setLocalUrl:expectedLocalURL];
290+
291+
NSString *localURL = [[BNCPreferenceHelper sharedInstance] localUrl];
292+
XCTAssertEqualObjects(localURL, expectedLocalURL);
293+
}
294+
295+
- (void)testSetInitialReferrer {
296+
NSString *expectedReferrer = @"referrer.example.com";
297+
[[BNCPreferenceHelper sharedInstance] setInitialReferrer:expectedReferrer];
298+
299+
NSString *actualReferrer = [[BNCPreferenceHelper sharedInstance] initialReferrer];
300+
XCTAssertEqualObjects(actualReferrer, expectedReferrer);
301+
}
302+
303+
- (void)testSetAppleAttributionTokenChecked {
304+
BOOL expectedValue = YES;
305+
[[BNCPreferenceHelper sharedInstance] setAppleAttributionTokenChecked:expectedValue];
306+
307+
BOOL actualValue = [[BNCPreferenceHelper sharedInstance] appleAttributionTokenChecked];
308+
XCTAssertEqual(expectedValue, actualValue);
309+
}
310+
311+
- (void)testSetHasOptedInBefore {
312+
BOOL expectedValue = YES;
313+
[[BNCPreferenceHelper sharedInstance] setHasOptedInBefore:expectedValue];
314+
315+
BOOL actualValue = [[BNCPreferenceHelper sharedInstance] hasOptedInBefore];
316+
XCTAssertEqual(expectedValue, actualValue);
317+
}
318+
319+
- (void)testSetHasCalledHandleATTAuthorizationStatus {
320+
BOOL expectedValue = YES;
321+
[[BNCPreferenceHelper sharedInstance] setHasCalledHandleATTAuthorizationStatus:expectedValue];
322+
323+
BOOL actualValue = [[BNCPreferenceHelper sharedInstance] hasCalledHandleATTAuthorizationStatus];
324+
XCTAssertEqual(expectedValue, actualValue);
325+
}
326+
327+
- (void)testSetRequestMetadataKeyValidKeyValue {
328+
NSString *key = @"testKey";
329+
NSString *value = @"testValue";
330+
331+
[[BNCPreferenceHelper sharedInstance] setRequestMetadataKey:key value:value];
332+
333+
NSObject *retrievedValue = [[BNCPreferenceHelper sharedInstance].requestMetadataDictionary objectForKey:key];
334+
XCTAssertEqualObjects(retrievedValue, value);
335+
}
336+
337+
- (void)testSetRequestMetadataKeyValidKeyNilValue {
338+
NSString *key = @"testKey";
339+
NSString *value = @"testValue";
340+
341+
[[BNCPreferenceHelper sharedInstance].requestMetadataDictionary setObject:value forKey:key];
342+
343+
[[BNCPreferenceHelper sharedInstance] setRequestMetadataKey:key value:nil];
344+
345+
NSObject *retrievedValue = [[BNCPreferenceHelper sharedInstance].requestMetadataDictionary objectForKey:key];
346+
XCTAssertNil(retrievedValue);
347+
}
348+
349+
- (void)testSetRequestMetadataKeyValidKeyNilValueKeyNotExists {
350+
NSString *key = @"testKeyNotExists";
351+
352+
NSUInteger initialDictCount = [[BNCPreferenceHelper sharedInstance].requestMetadataDictionary count];
353+
354+
[[BNCPreferenceHelper sharedInstance] setRequestMetadataKey:key value:nil];
355+
356+
NSUInteger postActionDictCount = [[BNCPreferenceHelper sharedInstance].requestMetadataDictionary count];
357+
XCTAssertEqual(initialDictCount, postActionDictCount);
358+
}
359+
360+
- (void)testSetRequestMetadataKeyNilKey {
361+
NSString *value = @"testValue";
362+
NSUInteger initialDictCount = [[BNCPreferenceHelper sharedInstance].requestMetadataDictionary count];
363+
364+
[[BNCPreferenceHelper sharedInstance] setRequestMetadataKey:nil value:value];
365+
366+
NSUInteger postActionDictCount = [[BNCPreferenceHelper sharedInstance].requestMetadataDictionary count];
367+
XCTAssertEqual(initialDictCount, postActionDictCount);
368+
}
369+
370+
- (void)testSetLimitFacebookTracking {
371+
BOOL expectedValue = YES;
372+
373+
[[BNCPreferenceHelper sharedInstance] setLimitFacebookTracking:expectedValue];
374+
375+
BOOL storedValue = [[BNCPreferenceHelper sharedInstance] limitFacebookTracking];
376+
377+
XCTAssertEqual(expectedValue, storedValue);
378+
}
379+
380+
- (void)testSetTrackingDisabled_YES {
381+
[[BNCPreferenceHelper sharedInstance] setTrackingDisabled:YES];
382+
383+
BOOL storedValue = [[BNCPreferenceHelper sharedInstance] trackingDisabled];
384+
XCTAssertTrue(storedValue);
385+
[[BNCPreferenceHelper sharedInstance] setTrackingDisabled:NO];
386+
}
387+
388+
- (void)testSetTrackingDisabled_NO {
389+
[[BNCPreferenceHelper sharedInstance] setTrackingDisabled:NO];
390+
391+
BOOL storedValue = [[BNCPreferenceHelper sharedInstance] trackingDisabled];
392+
XCTAssertFalse(storedValue);
393+
}
394+
395+
- (void)testClearTrackingInformation {
396+
[[BNCPreferenceHelper sharedInstance] clearTrackingInformation];
397+
398+
XCTAssertNil([BNCPreferenceHelper sharedInstance].sessionID);
399+
XCTAssertNil([BNCPreferenceHelper sharedInstance].linkClickIdentifier);
400+
XCTAssertNil([BNCPreferenceHelper sharedInstance].spotlightIdentifier);
401+
XCTAssertNil([BNCPreferenceHelper sharedInstance].referringURL);
402+
XCTAssertNil([BNCPreferenceHelper sharedInstance].universalLinkUrl);
403+
XCTAssertNil([BNCPreferenceHelper sharedInstance].initialReferrer);
404+
XCTAssertNil([BNCPreferenceHelper sharedInstance].installParams);
405+
XCTAssertNil([BNCPreferenceHelper sharedInstance].sessionParams);
406+
XCTAssertNil([BNCPreferenceHelper sharedInstance].externalIntentURI);
407+
XCTAssertNil([BNCPreferenceHelper sharedInstance].savedAnalyticsData);
408+
XCTAssertNil([BNCPreferenceHelper sharedInstance].previousAppBuildDate);
409+
XCTAssertEqual([BNCPreferenceHelper sharedInstance].requestMetadataDictionary.count, 0);
410+
XCTAssertNil([BNCPreferenceHelper sharedInstance].lastStrongMatchDate);
411+
XCTAssertNil([BNCPreferenceHelper sharedInstance].userIdentity);
412+
XCTAssertNil([BNCPreferenceHelper sharedInstance].referringURLQueryParameters);
413+
XCTAssertNil([BNCPreferenceHelper sharedInstance].anonID);
414+
}
415+
416+
- (void)testSaveBranchAnalyticsData {
417+
NSString *dummySessionID = @"testSession123";
418+
NSDictionary *dummyAnalyticsData = @{ @"key1": @"value1", @"key2": @"value2" };
419+
420+
[BNCPreferenceHelper sharedInstance].sessionID = dummySessionID;
421+
422+
[[BNCPreferenceHelper sharedInstance] saveBranchAnalyticsData:dummyAnalyticsData];
423+
424+
NSMutableDictionary *retrievedData = [[BNCPreferenceHelper sharedInstance] getBranchAnalyticsData];
425+
426+
NSArray *viewDataArray = [retrievedData objectForKey:dummySessionID];
427+
XCTAssertNotNil(viewDataArray);
428+
XCTAssertEqual(viewDataArray.count, 1);
429+
XCTAssertEqualObjects(viewDataArray.firstObject, dummyAnalyticsData);
430+
}
431+
432+
- (void)testClearBranchAnalyticsData {
433+
[[BNCPreferenceHelper sharedInstance] clearBranchAnalyticsData];
434+
435+
NSMutableDictionary *retrievedData = [[BNCPreferenceHelper sharedInstance] getBranchAnalyticsData];
436+
XCTAssertEqual(retrievedData.count, 0);
437+
}
438+
439+
- (void)testSaveContentAnalyticsManifest {
440+
NSDictionary *dummyManifest = @{ @"manifestKey1": @"manifestValue1", @"manifestKey2": @"manifestValue2" };
441+
442+
[[BNCPreferenceHelper sharedInstance] saveContentAnalyticsManifest:dummyManifest];
443+
444+
NSDictionary *retrievedManifest = [[BNCPreferenceHelper sharedInstance] getContentAnalyticsManifest];
445+
446+
XCTAssertEqualObjects(retrievedManifest, dummyManifest);
447+
}
448+
449+
450+
263451
@end

DeepLinkDemo/Podfile.lock

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
PODS:
2-
- IQKeyboardManager (6.5.11)
2+
- IQKeyboardManager (6.5.15)
33

44
DEPENDENCIES:
55
- IQKeyboardManager
@@ -9,8 +9,8 @@ SPEC REPOS:
99
- IQKeyboardManager
1010

1111
SPEC CHECKSUMS:
12-
IQKeyboardManager: ef43ce1ba1e5aaf4adf222c0a46f39761f246879
12+
IQKeyboardManager: 22ffab9bd300ad493485a390a095f5db0c841776
1313

14-
PODFILE CHECKSUM: 28ea4157aa971450d43ffe2adb0c6ecb20612b86
14+
PODFILE CHECKSUM: 5d77f506f7fd530dd480a25e957b270a906b4207
1515

16-
COCOAPODS: 1.11.2
16+
COCOAPODS: 1.12.1

0 commit comments

Comments
 (0)