public ReadOnlyCollection <Toponym> FindNearbyPlaceName(NearbyPlaceNameFinder finder) { if (finder != null) { finder.UserName = _userName; } return(_client.FindNearbyPlaceName(finder)); }
public void GeoNames_FindNearbyPlaceName_ShouldReturnNull_WithoutUserName() { using (var geoNames = new GeoNamesContainer(null)) { var finder = new NearbyPlaceNameFinder(); var results = geoNames.FindNearbyPlaceName(finder); results.ShouldBeNull(); } }
/// <summary> /// Find nearby populated place / reverse geocoding. See /// <seealso cref="http://www.geonames.org/export/web-services.html#findNearbyPlaceName">Official /// GeoNames findNearbyPlaceName Documentation</seealso> for more information. /// </summary> /// <param name="finder">Arguments sent to the GeoNames service.</param> /// <returns>The closest populated place for the lat/lng query as xml document. The unit of the /// distance element is 'km'.</returns> public ReadOnlyCollection <Toponym> FindNearbyPlaceName(NearbyPlaceNameFinder finder) { if (finder == null) { throw new ArgumentNullException("finder"); } var response = ChannelFindNearbyPlaceName(finder); var results = response.Items; return(results != null ? new ReadOnlyCollection <Toponym>(results) : null); }
public void GeoNames_NearbyPlaceNameFinder_ShouldHaveDefaultValues() { var finder = new NearbyPlaceNameFinder(); finder.ShouldNotBeNull(); finder.Latitude.ShouldEqual(0.0); finder.Longitude.ShouldEqual(0.0); finder.UserName.ShouldBeNull(); finder.Language.ShouldEqual("local"); finder.RadiusInKm.ShouldBeNull(); finder.MaxRows.ShouldEqual(100); finder.Style.ShouldEqual(ResultStyle.Medium); }
public void GeoNames_FindNearbyPlaceName_ShouldReturn1Result_ForLehighLatitudeAndLongitude_WhenNoRadiusIsSpecified() { using (var geoNames = new GeoNamesContainer(UserName)) { var finder = new NearbyPlaceNameFinder { Latitude = 40.60326613801468, Longitude = -75.37771224975586, }; var results = geoNames.FindNearbyPlaceName(finder); results.ShouldNotBeNull(); results.Count.ShouldEqual(1); results[0].GeoNameId.ShouldEqual(5216771); results[0].Name.ShouldEqual("University Heights"); } }
public void GeoNames_FindNearbyPlaceName_ShouldReturn10Results_ForLehighLatitudeAndLongitude_When10KmRadiusIsSpecified() { using (var geoNames = new GeoNamesContainer(UserName)) { var finder = new NearbyPlaceNameFinder { Latitude = 40.60326613801468, Longitude = -75.37771224975586, RadiusInKm = 10.0, MaxRows = 10, }; var results = geoNames.FindNearbyPlaceName(finder); results.ShouldNotBeNull(); results.Count.ShouldEqual(10); results[0].GeoNameId.ShouldEqual(5216771); results[0].Name.ShouldEqual("University Heights"); } }
public void GeoNames_FindNearbyPlaceName_ShouldReturn10Results_ForLehighLatitudeAndLongitude_When10KmRadiusIsSpecified() { using (var geoNames = new GeoNamesClient()) { var finder = new NearbyPlaceNameFinder { Latitude = 40.60326613801468, Longitude = -75.37771224975586, UserName = UserName, RadiusInKm = 10.0, MaxRows = 10, }; var results = geoNames.FindNearbyPlaceName(finder); results.ShouldNotBeNull(); results.Count.ShouldEqual(10); results[0].GeoNameId.ShouldEqual(5216771); results[0].Name.ShouldEqual("University Heights"); } }
private Results <Toponym> ChannelFindNearbyPlaceName(NearbyPlaceNameFinder finder, int retry = 0) { try { if (finder.RadiusInKm.HasValue) { return(Channel.FindNearbyPlaceName(finder.Latitude, finder.Longitude, finder.Language, finder.RadiusInKm.Value, finder.MaxRows, finder.Style, finder.UserName)); } return(Channel.FindNearbyPlaceName(finder.Latitude, finder.Longitude, finder.Language, finder.MaxRows, finder.Style, finder.UserName)); } catch (WebException ex) { if (retry < RetryLimit && ex.Message.StartsWith(ClosedConnectionMessage, StringComparison.Ordinal)) { return(ChannelFindNearbyPlaceName(finder, ++retry)); } throw; } }
public void GeoNames_NearbyPlaceNameFinder_ShouldBePublic() { var finder = new NearbyPlaceNameFinder { Latitude = 90.0, Longitude = 180.0, UserName = "******", Language = "language", RadiusInKm = 1.0, MaxRows = 2, Style = ResultStyle.Medium, }; finder.ShouldNotBeNull(); finder.Latitude.ShouldEqual(90.0); finder.Longitude.ShouldEqual(180.0); finder.UserName.ShouldNotBeNull(); finder.Language.ShouldNotBeNull(); finder.RadiusInKm.HasValue.ShouldBeTrue(); finder.MaxRows.ShouldEqual(2); finder.Style.ShouldEqual(ResultStyle.Medium); }
public void GeoNames_FindNearbyPlaceName_ShouldReturn1Result_ForLehighLatitudeAndLongitude_WhenNoRadiusIsSpecified() { using (var geoNames = new GeoNamesClient()) { var finder = new NearbyPlaceNameFinder { Latitude = 40.60326613801468, Longitude = -75.37771224975586, UserName = UserName, }; var results = geoNames.FindNearbyPlaceName(finder); results.ShouldNotBeNull(); results.Count.ShouldEqual(1); results[0].GeoNameId.ShouldEqual(5216771); results[0].Name.ShouldEqual("University Heights"); } }
public ReadOnlyCollection<Toponym> FindNearbyPlaceName(NearbyPlaceNameFinder finder) { if (finder != null) finder.UserName = _userName; return _client.FindNearbyPlaceName(finder); }