public void GetQueryStringParametersTest() { var request = new PlacesNearBySearchRequest { Key = "abc", Location = new Location(0, 0), Radius = 5000, Keyword = "test" }; Assert.DoesNotThrow(() => request.GetQueryStringParameters()); }
public void GetQueryStringParametersWhenKeyIsStringEmptyTest() { var request = new PlacesNearBySearchRequest { Key = string.Empty }; var exception = Assert.Throws <ArgumentException>(() => { var parameters = request.GetQueryStringParameters(); Assert.IsNull(parameters); }); Assert.AreEqual(exception.Message, "'Key' is required"); }
public void GetQueryStringParametersTest() { var request = new PlacesNearBySearchRequest { Key = "key", Location = new Coordinate(0, 0), Radius = 100 }; var queryStringParameters = request.GetQueryStringParameters(); Assert.IsNotNull(queryStringParameters); var key = queryStringParameters.FirstOrDefault(x => x.Key == "key"); var keyExpected = request.Key; Assert.IsNotNull(key); Assert.AreEqual(keyExpected, key.Value); var keyword = queryStringParameters.FirstOrDefault(x => x.Key == "keyword"); var keywordExpected = request.Keyword; Assert.IsNotNull(keyword); Assert.AreEqual(keywordExpected, keyword.Value); var language = queryStringParameters.FirstOrDefault(x => x.Key == "language"); Assert.IsNotNull(language); Assert.AreEqual("en", language.Value); var rankby = queryStringParameters.FirstOrDefault(x => x.Key == "rankby"); var rankbyExpected = Ranking.Prominence.ToString().ToLower(); Assert.IsNotNull(rankby); Assert.AreEqual(rankbyExpected, rankby.Value); var location = queryStringParameters.FirstOrDefault(x => x.Key == "location"); var locationExpected = request.Location.ToString(); Assert.IsNotNull(location); Assert.AreEqual(locationExpected, location.Value); var radius = queryStringParameters.FirstOrDefault(x => x.Key == "radius"); var radiusExpected = request.Radius.ToString(); Assert.IsNotNull(radius); Assert.AreEqual(radiusExpected, radius.Value); }
public void GetQueryStringParametersWhenLocationIsNullTest() { var request = new PlacesNearBySearchRequest { Key = "key", Location = null }; var exception = Assert.Throws <ArgumentException>(() => { var parameters = request.GetQueryStringParameters(); Assert.IsNull(parameters); }); Assert.AreEqual(exception.Message, "'Location' is required"); }
public void GetQueryStringParametersWhenRadiusIsGereaterThanFiftyThousandTest() { var request = new PlacesNearBySearchRequest { Key = "abc", Location = new Location(51.491431, -3.16668), Radius = 50001 }; var exception = Assert.Throws <ArgumentException>(() => { var parameters = request.GetQueryStringParameters(); Assert.IsNull(parameters); }); Assert.AreEqual(exception.Message, "Radius must be greater than or equal to 1 and less than or equal to 50.000"); }
public void GetQueryStringParametersWhenRankByDistanceAndNameIsNullAndKeywordIsNullAndTypeIsNullTest() { var request = new PlacesNearBySearchRequest { Key = "abc", Location = new Location(51.491431, -3.16668), Rankby = Ranking.Distance }; var exception = Assert.Throws <ArgumentException>(() => { var parameters = request.GetQueryStringParameters(); Assert.IsNull(parameters); }); Assert.AreEqual(exception.Message, "Keyword, Name or Type is required, If rank by distance"); }
public void GetQueryStringParametersWhenRadiusIsLessThanOneTest() { var request = new PlacesNearBySearchRequest { Key = "key", Location = new Coordinate(1, 1), Radius = 0 }; var exception = Assert.Throws <ArgumentException>(() => { var parameters = request.GetQueryStringParameters(); Assert.IsNull(parameters); }); Assert.AreEqual(exception.Message, "'Radius' must be greater than or equal to 1 and less than or equal to 50.000"); }
public void GetQueryStringParametersWhenRadiusIsNullTest() { var request = new PlacesNearBySearchRequest { Key = "abc", Location = new Location(0, 0), Radius = null }; var exception = Assert.Throws <ArgumentException>(() => { var parameters = request.GetQueryStringParameters(); Assert.IsNull(parameters); }); Assert.AreEqual(exception.Message, "Radius is required, when RankBy is not Distance"); }
public void GetQueryStringParametersWhenRankByDistanceAndRadiusIsNotNullTest() { var request = new PlacesNearBySearchRequest { Key = "key", Location = new Coordinate(1, 1), Radius = 5001, Rankby = Ranking.Distance }; var exception = Assert.Throws <ArgumentException>(() => { var parameters = request.GetQueryStringParameters(); Assert.IsNull(parameters); }); Assert.AreEqual(exception.Message, "'Radius' cannot be specified, when using 'Rankby' is distance"); }
public void GetQueryStringParametersWhenPageTokenTest() { var request = new PlacesNearBySearchRequest { Key = "key", PageToken = "pagetoken" }; var queryStringParameters = request.GetQueryStringParameters(); Assert.IsNotNull(queryStringParameters); var pagetoken = queryStringParameters.FirstOrDefault(x => x.Key == "pagetoken"); var pagetokenExpected = request.PageToken; Assert.IsNotNull(pagetoken); Assert.AreEqual(pagetokenExpected, pagetoken.Value); }
public void GetQueryStringParametersWhenOpenNowTest() { var request = new PlacesNearBySearchRequest { Key = "key", Location = new Coordinate(0, 0), Radius = 100, OpenNow = true }; var queryStringParameters = request.GetQueryStringParameters(); Assert.IsNotNull(queryStringParameters); var radius = queryStringParameters.FirstOrDefault(x => x.Key == "opennow"); Assert.IsNotNull(radius); }
public void GetQueryStringParametersWhenKeyIsNullTest() { var request = new PlacesNearBySearchRequest { Key = null, Location = new Location(0, 0), Radius = 5000, Keyword = "test" }; var exception = Assert.Throws <ArgumentException>(() => { var parameters = request.GetQueryStringParameters(); Assert.IsNull(parameters); }); Assert.AreEqual(exception.Message, "Key is required"); }
public void GetQueryStringParametersWhenRankByDistanceAndRadiusIsNotNullTest() { var request = new PlacesNearBySearchRequest { Key = "abc", Location = new Location(51.491431, -3.16668), Radius = 5001, Rankby = Ranking.Distance }; var exception = Assert.Throws <ArgumentException>(() => { var parameters = request.GetQueryStringParameters(); Assert.IsNull(parameters); }); Assert.AreEqual(exception.Message, "Radius cannot be specified, when using RankBy distance"); }
public void GetQueryStringParametersWhenKeywordTest() { var request = new PlacesNearBySearchRequest { Key = "key", Location = new Coordinate(0, 0), Radius = 100, Keyword = "keyword" }; var queryStringParameters = request.GetQueryStringParameters(); Assert.IsNotNull(queryStringParameters); var keyword = queryStringParameters.FirstOrDefault(x => x.Key == "keyword"); var keywordExpected = request.Keyword; Assert.IsNotNull(keyword); Assert.AreEqual(keywordExpected, keyword.Value); }
public void GetQueryStringParametersWhenMaxpriceTest() { var request = new PlacesNearBySearchRequest { Key = "key", Location = new Coordinate(0, 0), Radius = 100, Maxprice = PriceLevel.Free }; var queryStringParameters = request.GetQueryStringParameters(); Assert.IsNotNull(queryStringParameters); var maxprice = queryStringParameters.FirstOrDefault(x => x.Key == "maxprice"); var maxpriceExpected = ((int)request.Maxprice.GetValueOrDefault()).ToString(); Assert.IsNotNull(maxprice); Assert.AreEqual(maxpriceExpected, maxprice.Value); }
public void GetQueryStringParametersWhenNameTest() { var request = new PlacesNearBySearchRequest { Key = "key", Location = new Coordinate(0, 0), Radius = 100, Name = "name" }; var queryStringParameters = request.GetQueryStringParameters(); Assert.IsNotNull(queryStringParameters); var name = queryStringParameters.FirstOrDefault(x => x.Key == "name"); var nameExpected = request.Name; Assert.IsNotNull(name); Assert.AreEqual(nameExpected, name.Value); }
public void GetQueryStringParametersWhenTypeTest() { var request = new PlacesNearBySearchRequest { Key = "key", Location = new Coordinate(0, 0), Radius = 100, Type = SearchPlaceType.Accounting }; var queryStringParameters = request.GetQueryStringParameters(); Assert.IsNotNull(queryStringParameters); var type = queryStringParameters.FirstOrDefault(x => x.Key == "type"); var typeAttribute = request.Type?.GetType().GetMembers().FirstOrDefault(x => x.Name == request.Type.ToString())?.GetCustomAttribute <EnumMemberAttribute>(); var typeExpected = typeAttribute?.Value.ToLower(); Assert.IsNotNull(type); Assert.AreEqual(typeExpected, type.Value); }