public void GenerateAggregateUrlTests() { // Arrange var baseUrl = @"http://www.test.com/"; var id = "Achany"; var region = "99"; string urlBaseNullIdNullRegionDefault = string.Empty; string urlBaseValueIdNullRegionDefault = string.Empty; string urlBaseValueIdValueRegionDefault = "{\"Url\": \"" + @"http://www.test.com//name/Achany/status/All/region/1094/" + "\"}"; string urlBaseValueIdValueRegion99 = "{\"Url\": \"" + @"http://www.test.com//name/Achany/status/All/region/99/" + "\"}"; string urlBaseEmptyIdEmptyRegionDefault = string.Empty; var helper = new Infrastructure.Helpers.RenUkHtmlHelper(); // Act var result1 = helper.GenerateAggregateUrl(null, null); var result2 = helper.GenerateAggregateUrl(baseUrl, null); var result3 = helper.GenerateAggregateUrl(baseUrl, id); var result4 = helper.GenerateAggregateUrl(baseUrl, id, region); var result5 = helper.GenerateAggregateUrl(string.Empty, string.Empty); // Assert Assert.AreEqual(urlBaseNullIdNullRegionDefault, result1, "Expected empty string as both parameters invalid (null)."); Assert.AreEqual(urlBaseValueIdNullRegionDefault, result2, "Expected empty string as AggregateId parameter invalid (null)."); Assert.AreEqual(urlBaseValueIdValueRegionDefault, result3, "Expected '{\"Url\": \"http://www.test.com//name/Achany/status/All/region/1094/\"}' as both parameters OK and region defaulted to 1094."); Assert.AreEqual(urlBaseValueIdValueRegion99, result4, "Expected '{\"Url\": \"http://www.test.com//name/Achany/status/All/region/99/\"}' as both parameters OK and region 99."); Assert.AreEqual(urlBaseEmptyIdEmptyRegionDefault, result5, "Expected empty string as both parameters invalid (empty strings)."); }