public void GetVenueSuggestionsAsyncTest() { var suggestionTask = _fsProvider.GetVenueSuggestionsAsync("pizza", "Brno", 30); suggestionTask.Wait(); List <MiniVenue> venues = suggestionTask.Result.Response.MiniVenues; Assert.IsTrue(venues.Count > 0 && venues.Count <= 30); foreach (MiniVenue v in venues) { Debug.WriteLine(v.Location.City); Assert.IsTrue(v.Location.City == null || v.Location.City.Contains("Brno")); } }
/// <summary> /// Get Place suggestions in async operation /// </summary> /// <param name="term">Part of the place name</param> /// <param name="city">City in which to look for</param> /// <param name="maxCount">Maximum count of suggestions</param> /// <returns><c ref="List of FourSquareVenueModel"/> containg required suggestions</returns> public async Task <IList <FourSquareVenueModel> > GetPlaceSuggestionsAsync(string term, string city, int maxCount = 30) { var venueModels = new List <FourSquareVenueModel>(); var suggestionsResponse = await _fs.GetVenueSuggestionsAsync(term, city, maxCount); if (suggestionsResponse.Meta.Code != 200) { return(null); } venueModels.AddRange(suggestionsResponse.Response.MiniVenues.Select(miniVenue => new FourSquareVenueModel { AddressInfo = miniVenue.Location.Address ?? "Unknown", City = miniVenue.Location.City, Name = miniVenue.Name, VenueId = miniVenue.Id, Lat = miniVenue.Location.Lat, Lng = miniVenue.Location.Lng })); return(venueModels); }