@@ -79,6 +79,17 @@ - (void)testReferringURLWithNoParams {
7979 XCTAssert ([expected isEqualToDictionary: params]);
8080}
8181
82+ - (void )testNilReferringURL {
83+ NSURL *url = nil ;
84+ NSDictionary *expected = @{};
85+
86+ BNCReferringURLUtility *utility = [self referringUtilityForTests ];
87+ [utility parseReferringURL: url];
88+ NSDictionary *params = [utility referringURLQueryParamsForEndpoint: openEndpoint];
89+
90+ XCTAssert ([expected isEqualToDictionary: params]);
91+ }
92+
8293- (void )testReferringURLIgnoredParam {
8394 NSURL *url = [NSURL URLWithString: @" https://bnctestbed.app.link?other=12345" ];
8495 NSDictionary *expected = @{ };
@@ -228,6 +239,17 @@ - (void)testReferringURLWithGclidOverwritesValue {
228239 XCTAssert ([expected2 isEqualToDictionary: params2]);
229240}
230241
242+ - (void )testReferringURLWithMetaCampaignIdsAndInvalidURL {
243+ NSURL *url = [NSURL URLWithString: @" https://bnctestbed.app.link?al_applink_data=[]#target_url%22% 3A%22http%3A%5C%2F%5C%2F itunes.apple.com%5C%2F app%5C%2F id880047117%22% 2C%22e xtras%22% 3A%7B%22f b_app_id%22% 3A2020399148181142%7D%2C %22referer_app_link%22% 3A%7B%22u rl%22% 3A%22f b%3A%5C%2F%5C%2F%5C%2F%3F app_id%3D 2020399148181142%22% 2C%22a pp_name%22% 3A%22F acebook%22% 7D%2C%22a cs_token%22% 3A%22d ebuggingtoken%22% 2C%22c ampaign_ids%22% 3A%22A RFUlbyOurYrHT2DsknR7VksCSgN4tiH8TzG8RIvVoUQoYog5bVCvADGJil5kFQC6tQm-fFJQH0w8wCi3NbOmEHHrtgCNglkXNY-bECEL0aUhj908hIxnBB0tchJCqwxHjorOUqyk2v4bTF75PyWvxOksZ6uTzBmr7wJq8XnOav0bA%22% 2C%22te st_deeplink%22% 3A1%7D " ];
244+ NSDictionary *expected = @{};
245+
246+ BNCReferringURLUtility *utility = [self referringUtilityForTests ];
247+ [utility parseReferringURL: url];
248+ NSDictionary *params = [utility referringURLQueryParamsForEndpoint: openEndpoint];
249+
250+ XCTAssert ([expected isEqualToDictionary: params]);
251+ }
252+
231253- (void )testReferringURLWithMetaCampaignIds {
232254 NSURL *url = [NSURL URLWithString: @" https://bnctestbed.app.link?al_applink_data=%7B%22ta rget_url%22% 3A%22http%3A%5C%2F%5C%2F itunes.apple.com%5C%2F app%5C%2F id880047117%22% 2C%22e xtras%22% 3A%7B%22f b_app_id%22% 3A2020399148181142%7D%2C %22referer_app_link%22% 3A%7B%22u rl%22% 3A%22f b%3A%5C%2F%5C%2F%5C%2F%3F app_id%3D 2020399148181142%22% 2C%22a pp_name%22% 3A%22F acebook%22% 7D%2C%22a cs_token%22% 3A%22d ebuggingtoken%22% 2C%22c ampaign_ids%22% 3A%22A RFUlbyOurYrHT2DsknR7VksCSgN4tiH8TzG8RIvVoUQoYog5bVCvADGJil5kFQC6tQm-fFJQH0w8wCi3NbOmEHHrtgCNglkXNY-bECEL0aUhj908hIxnBB0tchJCqwxHjorOUqyk2v4bTF75PyWvxOksZ6uTzBmr7wJq8XnOav0bA%22% 2C%22te st_deeplink%22% 3A1%7D " ];
233255 NSDictionary *expected = @{
0 commit comments