public async Task <List <Rating> > GetRating(long cinemaId, long movieId) { var key = String.Format("rating{0}-{1}", cinemaId, movieId); List <Rating> rating = _cacheService.Get <List <Rating> >(key); var uri = ResourceIdentifier.RatingUri(cinemaId, movieId); if (_connectivity.EnsureInternetAccess()) { try { var responseString = await _httpService.Get(uri); rating = (List <Rating>)_jsonConverter.DeserializeObject(responseString, typeof(List <Rating>)); _cacheService.Set(key, rating, CacheExpiry(15.0)); } catch { ShowGetFailedNotification(); return(new List <Rating>()); } } else { ShowConnectionNotification(); return(new List <Rating>()); } return(rating); }
public void RatingUriReturnsRatingUri() { var expected = "https://epertuar.azurewebsites.net/api/Rating"; var actual = ResourceIdentifier.RatingUri(); Assert.Equal(expected, actual); }
public async Task <bool> PostScore(UserScore userScore) { var stringContent = new StringContent(_converter.SerializeScore(userScore), System.Text.Encoding.UTF8, "application/json"); var isSuccessStatusCode = await _httpService.Post(ResourceIdentifier.RatingUri(), stringContent); return(isSuccessStatusCode); }