@@ -409,4 +409,107 @@ - (void)testSetAPIURL_InvalidEmpty {
409409 XCTAssertEqualObjects (storedUrl, expectedUrl);
410410}
411411
412+
413+ - (void )testSetSafeTrackServiceURLWithUserTrackingDomain {
414+ NSString *url = @" https://links.toTestDomain.com" ;
415+ NSString *safeTrackUrl = @" https://links.toTestDomain-safeTrack.com" ;
416+
417+ [Branch setAPIUrl: url];
418+ [Branch setSafetrackAPIURL: safeTrackUrl];
419+
420+ BNCServerAPI *serverAPI = [BNCServerAPI sharedInstance ];
421+ serverAPI.automaticallyEnableTrackingDomain = NO ;
422+ serverAPI.useTrackingDomain = YES ;
423+
424+ NSString *storedUrl = [[BNCServerAPI sharedInstance ] installServiceURL ];
425+ NSString *expectedUrl = @" https://links.toTestDomain-safeTrack.com/v1/install" ;
426+ XCTAssertEqualObjects (storedUrl, expectedUrl);
427+
428+ storedUrl = [[BNCServerAPI sharedInstance ] openServiceURL ];
429+ expectedUrl = @" https://links.toTestDomain-safeTrack.com/v1/open" ;
430+ XCTAssertEqualObjects (storedUrl, expectedUrl);
431+
432+ storedUrl = [[BNCServerAPI sharedInstance ] standardEventServiceURL ];
433+ expectedUrl = @" https://links.toTestDomain-safeTrack.com/v2/event/standard" ;
434+ XCTAssertEqualObjects (storedUrl, expectedUrl);
435+
436+ storedUrl = [[BNCServerAPI sharedInstance ] customEventServiceURL ];
437+ expectedUrl = @" https://links.toTestDomain-safeTrack.com/v2/event/custom" ;
438+ XCTAssertEqualObjects (storedUrl, expectedUrl);
439+
440+ storedUrl = [[BNCServerAPI sharedInstance ] linkServiceURL ];
441+ expectedUrl = @" https://links.toTestDomain.com/v1/url" ;
442+ XCTAssertEqualObjects (storedUrl, expectedUrl);
443+
444+ storedUrl = [[BNCServerAPI sharedInstance ] qrcodeServiceURL ];
445+ expectedUrl = @" https://links.toTestDomain.com/v1/qr-code" ;
446+ XCTAssertEqualObjects (storedUrl, expectedUrl);
447+
448+ storedUrl = [[BNCServerAPI sharedInstance ] latdServiceURL ];
449+ expectedUrl = @" https://links.toTestDomain.com/v1/cpid/latd" ;
450+ XCTAssertEqualObjects (storedUrl, expectedUrl);
451+
452+ storedUrl = [[BNCServerAPI sharedInstance ] validationServiceURL ];
453+ expectedUrl = @" https://links.toTestDomain.com/v1/app-link-settings" ;
454+ XCTAssertEqualObjects (storedUrl, expectedUrl);
455+
456+ [BNCServerAPI sharedInstance ].useTrackingDomain = NO ;
457+ [BNCServerAPI sharedInstance ].useEUServers = NO ;
458+ [BNCServerAPI sharedInstance ].automaticallyEnableTrackingDomain = YES ;
459+ [BNCServerAPI sharedInstance ].customAPIURL = nil ;
460+ [BNCServerAPI sharedInstance ].customSafeTrackAPIURL = nil ;
461+
462+ }
463+
464+ - (void )testSetSafeTrackServiceURLWithOutUserTrackingDomain {
465+ NSString *url = @" https://links.toTestDomain.com" ;
466+ NSString *safeTrackUrl = @" https://links.toTestDomain-safeTrack.com" ;
467+
468+ [Branch setAPIUrl: url];
469+ [Branch setSafetrackAPIURL: safeTrackUrl];
470+
471+ BNCServerAPI *serverAPI = [BNCServerAPI sharedInstance ];
472+ serverAPI.automaticallyEnableTrackingDomain = NO ;
473+ serverAPI.useTrackingDomain = NO ;
474+
475+ NSString *storedUrl = [[BNCServerAPI sharedInstance ] installServiceURL ];
476+ NSString *expectedUrl = @" https://links.toTestDomain.com/v1/install" ;
477+ XCTAssertEqualObjects (storedUrl, expectedUrl);
478+
479+ storedUrl = [[BNCServerAPI sharedInstance ] openServiceURL ];
480+ expectedUrl = @" https://links.toTestDomain.com/v1/open" ;
481+ XCTAssertEqualObjects (storedUrl, expectedUrl);
482+
483+ storedUrl = [[BNCServerAPI sharedInstance ] standardEventServiceURL ];
484+ expectedUrl = @" https://links.toTestDomain.com/v2/event/standard" ;
485+ XCTAssertEqualObjects (storedUrl, expectedUrl);
486+
487+ storedUrl = [[BNCServerAPI sharedInstance ] customEventServiceURL ];
488+ expectedUrl = @" https://links.toTestDomain.com/v2/event/custom" ;
489+ XCTAssertEqualObjects (storedUrl, expectedUrl);
490+
491+ storedUrl = [[BNCServerAPI sharedInstance ] linkServiceURL ];
492+ expectedUrl = @" https://links.toTestDomain.com/v1/url" ;
493+ XCTAssertEqualObjects (storedUrl, expectedUrl);
494+
495+ storedUrl = [[BNCServerAPI sharedInstance ] qrcodeServiceURL ];
496+ expectedUrl = @" https://links.toTestDomain.com/v1/qr-code" ;
497+ XCTAssertEqualObjects (storedUrl, expectedUrl);
498+
499+ storedUrl = [[BNCServerAPI sharedInstance ] latdServiceURL ];
500+ expectedUrl = @" https://links.toTestDomain.com/v1/cpid/latd" ;
501+ XCTAssertEqualObjects (storedUrl, expectedUrl);
502+
503+ storedUrl = [[BNCServerAPI sharedInstance ] validationServiceURL ];
504+ expectedUrl = @" https://links.toTestDomain.com/v1/app-link-settings" ;
505+ XCTAssertEqualObjects (storedUrl, expectedUrl);
506+
507+ [BNCServerAPI sharedInstance ].useTrackingDomain = NO ;
508+ [BNCServerAPI sharedInstance ].useEUServers = NO ;
509+ [BNCServerAPI sharedInstance ].automaticallyEnableTrackingDomain = YES ;
510+ [BNCServerAPI sharedInstance ].customAPIURL = nil ;
511+ [BNCServerAPI sharedInstance ].customSafeTrackAPIURL = nil ;
512+
513+ }
514+
412515@end
0 commit comments