public async Task ThrowExeption_ReviewIsDeleted()
        {
            var options = TestUtils.GetOptions(nameof(ThrowExeption_ReviewIsDeleted));

            using (var arrangeContext = new MoviesCatalogContext(options))
            {
                await arrangeContext.Reviews.AddAsync(TestHelper.TestReview3());

                await arrangeContext.SaveChangesAsync();
            }

            using (var assertContext = new MoviesCatalogContext(options))
            {
                var sut = new ReviewService(assertContext);

                var ex = await Assert.ThrowsExceptionAsync <ArgumentException>(() => sut.EditReviewAsync(TestHelper.TestReview3(), TestHelper.TestUser2().Id, 3, "very nice movie"));

                Assert.AreEqual(ex.Message, string.Format(ServicesConstants.ReviewNotPresent));
            }
        }
        public async Task Succeed_WhenReviewIsFromUser()
        {
            var options = TestUtils.GetOptions(nameof(Succeed_WhenReviewIsFromUser));

            using (var arrangeContext = new MoviesCatalogContext(options))
            {
                await arrangeContext.Reviews.AddAsync(TestHelper.TestReview1());

                await arrangeContext.SaveChangesAsync();
            }

            using (var assertContext = new MoviesCatalogContext(options))
            {
                var sut = new ReviewService(assertContext);

                var review = await sut.EditReviewAsync(TestHelper.TestReview1(), TestHelper.TestUser1().Id, 3, "Very nice movie");

                var movie = review.Movie;

                Assert.IsTrue(movie.TotalRating == 4);
                Assert.IsTrue(movie.NumberOfVotes == 1);
                Assert.IsTrue(assertContext.Reviews.Count() == 1);
            }
        }