public IActionResult UserRating([FromBody] AddUserRatingDto req) { // Check null request if (req == null) { return(BadRequest()); } // Validate the request if (!ModelState.IsValidate(req)) { return(new UnprocessableEntityObjectResult(ModelState)); } // Check user exist if (_repository.GetUsers() .Where(u => u.UserId == req.userId) .ToList().Count() == 0) { return(NotFound()); } // Check movie exist if (_repository.GetMovieDetails() .Where(m => m.MovieId == req.MovieId) .ToList().Count() == 0) { return(NotFound()); } _repository.Save(req); return(Created("", "successful")); }
public void ServiceD_TestUpdateUserRating() { AddUserRatingDto = new AddUserRatingDto { MovieId = 1, userId = Guid.Parse("dffc62b8-3d28-4043-b159-062797a5ad65"), Rating = 4 }; var resp = _movieController.UserRating(AddUserRatingDto); Assert.IsInstanceOfType(resp, typeof(CreatedResult)); // BEFORE var PreviousData = GetAllRating() .FirstOrDefault(x => x.UserId == AddUserRatingDto.userId && x.MovieId == AddUserRatingDto.MovieId); Assert.AreEqual(2, PreviousData.MovieRating); // AFTER var RecentData = _rating .FirstOrDefault(x => x.MovieId == AddUserRatingDto.MovieId && x.UserId == AddUserRatingDto.userId); Assert.AreEqual(4, RecentData.MovieRating); }
public void ServiceD_TestAddUserRating() { AddUserRatingDto = new AddUserRatingDto { MovieId = 3, userId = Guid.Parse("5d03df01-272b-4b54-b9cc-f4760530643a"), Rating = 5 }; var resp = _movieController.UserRating(AddUserRatingDto); Assert.IsInstanceOfType(resp, typeof(CreatedResult)); // BEFORE var PreviousData = GetAllRating() .FirstOrDefault(x => x.UserId == AddUserRatingDto.userId && x.MovieId == AddUserRatingDto.MovieId); Assert.IsNull(PreviousData); // AFTER var RecentData = _rating .FirstOrDefault(x => x.MovieId == AddUserRatingDto.MovieId && x.UserId == AddUserRatingDto.userId); Assert.AreEqual(5, RecentData.MovieRating); }
// Add or update user rating public bool SaveData(AddUserRatingDto rating) { _rating = GetAllRating(); var record = _rating.Where(r => r.UserId == rating.userId && r.MovieId == rating.MovieId) .ToList(); if (record.Count() == 1) { _rating.Remove(record.FirstOrDefault()); } _rating.Add(new Rating { Id = (record.Count() == 0) ? 21 : record.FirstOrDefault().Id, MovieId = rating.MovieId, UserId = rating.userId, MovieRating = rating.Rating }); return(true); }