public void ShouldReplaceUriViaOnUriCreated() { var request = new DistanceMatrixRequest { ApiKey = ApiKey, Origins = new[] { "placeholder" }, Destinations = new[] { "3,4" }, }; UriCreatedDelegate onUriCreated = delegate(Uri uri) { var builder = new UriBuilder(uri); builder.Query = builder.Query.Replace("placeholder", "1,2"); return(builder.Uri); }; GoogleMaps.DistanceMatrix.OnUriCreated += onUriCreated; try { var result = GoogleMaps.DistanceMatrix.Query(request); if (result.Status == DistanceMatrixStatusCodes.OVER_QUERY_LIMIT) { Assert.Inconclusive("Cannot run test since you have exceeded your Google API query limit."); } Assert.AreEqual(DistanceMatrixStatusCodes.OK, result.Status); Assert.AreEqual("1,2", result.OriginAddresses.First()); } finally { GoogleMaps.DistanceMatrix.OnUriCreated -= onUriCreated; } }
public void ShouldReplaceUriViaOnUriCreated() { var request = new DistanceMatrixRequest { ApiKey = ApiKey, Origins = new[] { "placeholder" }, Destinations = new[] { "3,4" }, }; UriCreatedDelegate onUriCreated = delegate(Uri uri) { var builder = new UriBuilder(uri); builder.Query = builder.Query.Replace("placeholder", "1,2"); return(builder.Uri); }; GoogleMaps.DistanceMatrix.OnUriCreated += onUriCreated; try { var result = GoogleMaps.DistanceMatrix.Query(request); AssertInconclusive.NotExceedQuota(result); Assert.AreEqual(DistanceMatrixStatusCodes.OK, result.Status, result.ErrorMessage); Assert.AreEqual("1,2", result.OriginAddresses.First()); } finally { GoogleMaps.DistanceMatrix.OnUriCreated -= onUriCreated; } }