public async Task AddReviewToItemAsync_CustomerIDAndReviewViewModel_SameReviewViewModel() { // arrange int customerID = 3; string category = nameof(Song); string content = "It is good!"; int itemID = 5; int rating = 3; ReviewViewModel rvm = new ReviewViewModel { Category = category, Content = content, ItemID = itemID, Rating = rating }; using (var context = new ApplicationDbContext(_options)) { _service = new ReviewsService(context); // act await _service.AddReviewToItemAsync(customerID, rvm); var result = context.Find <Customer>(customerID).Reviews.FirstOrDefault(); // assert Assert.AreEqual(result.Content, content); Assert.AreEqual(result.SongID, itemID); Assert.AreEqual(result.Rating, rating); } }
public async Task <IActionResult> Create(ReviewViewModel reviewViewModel) { User user = await _userManager.GetUserAsync(User); int customerID = user.CustomerID.Value; if (!await CheckCustomerIDWithCurrentUser(reviewViewModel.CustomerID)) { return(View("Error", new ErrorViewModel())); } await _service.AddReviewToItemAsync(customerID, reviewViewModel); return(RedirectToAction( "Details", $"{reviewViewModel.Category}s", new { id = reviewViewModel.ItemID })); }