public static string DeeplinkGenerator(UrlServiceModel url) { switch (url.PageType) { case PageType.Other: return(Constants.DEEPLINK_HOME_TEMPLATE); case PageType.Search: return(string.Format(Constants.DEEPLINK_SEARCH_TEMPLATE, url.SearchQuery)); case PageType.Product: var deepLink = string.Format(Constants.DEEPLINK_PRODUCT_TEMPLATE, url.ContentId); if (url.BoutiqueId > 0) { deepLink = $"{deepLink}{string.Format(Constants.DEEPLINK_CAMPAIGN_TEMPLATE, url.BoutiqueId)}"; } if (url.MerchantId > 0) { deepLink = $"{deepLink}{string.Format(Constants.DEEPLINK_MERCHANT_TEMPLATE, url.MerchantId)}"; } return(deepLink); default: throw new ArgumentException($"Unknown Page Type: {url.PageType}"); } }
public void DeeplinkGenerator_ShouldReturn_Deeplink(UrlServiceModel urlModel, string deeplink) { var resp = Util.DeeplinkGenerator(urlModel); Assert.Equal(resp, deeplink); }