コード例 #1
0
        public async Task GetAllMovieReviewsShouldReturnEmptyListWithEmptyDb()
        {
            var reviewService = new ReviewService(dbContext, mapper);

            var expectedResult = new List <ReviewAllViewModel>();

            var actualResult = await reviewService.GetAllMovieReviewsAsync("id");

            Assert.Equal(expectedResult, actualResult);
        }
コード例 #2
0
        public async Task GetAllMovieReviewsShouldReturnAllReviewsProperly()
        {
            var user1 = new MovieDatabaseUser
            {
                UserName   = "******",
                Email      = "*****@*****.**",
                AvatarLink = "avatar",
            };
            var user2 = new MovieDatabaseUser
            {
                UserName   = "******",
                Email      = "*****@*****.**",
                AvatarLink = "avatar2",
            };
            var artist1 = new Artist
            {
                FullName  = "name1",
                Biography = "biography1",
                BirthDate = DateTime.Parse("25 July 2019"),
                PhotoLink = "photo1",
            };
            var movie1 = new Movie
            {
                Name        = "movie1",
                ReleaseDate = DateTime.Parse("24 July 2019"),
                Description = "description1",
                Length      = 160,
                Genre       = new Genre {
                    Name = "genre1"
                },
                Director       = artist1,
                CoverImageLink = "cover1",
                TrailerLink    = "trailer1",
            };
            var movieReview1 = new MovieReview
            {
                Movie   = movie1,
                User    = user1,
                Content = "content1",
                Rating  = 8,
                Date    = DateTime.Parse("27 July 2019"),
            };
            var movieReview2 = new MovieReview
            {
                Movie   = movie1,
                User    = user2,
                Content = "content2",
                Rating  = 9,
                Date    = DateTime.Parse("27 July 2019"),
            };
            await dbContext.Movies.AddAsync(movie1);

            await dbContext.MovieReviews.AddAsync(movieReview1);

            await dbContext.MovieReviews.AddAsync(movieReview2);

            await dbContext.SaveChangesAsync();

            var movieId = movie1.Id;

            var reviewService = new ReviewService(dbContext, mapper);

            var expectedResult = new List <ReviewAllViewModel>
            {
                new ReviewAllViewModel
                {
                    Item    = "movie1",
                    User    = "******",
                    Content = "content1",
                    Rating  = 8,
                    Date    = DateTime.Parse("27 July 2019"),
                },
                new ReviewAllViewModel
                {
                    Item    = "movie1",
                    User    = "******",
                    Content = "content2",
                    Rating  = 9,
                    Date    = DateTime.Parse("27 July 2019"),
                },
            };

            var actualResult = await reviewService.GetAllMovieReviewsAsync(movieId);

            Assert.True(actualResult.Count() == 2);

            Assert.Equal(expectedResult[0].Item, actualResult[0].Item);
            Assert.Equal(expectedResult[0].User, actualResult[0].User);
            Assert.Equal(expectedResult[0].Content, actualResult[0].Content);
            Assert.Equal(expectedResult[0].Rating, actualResult[0].Rating);
            Assert.Equal(expectedResult[0].Date, actualResult[0].Date);

            Assert.Equal(expectedResult[1].Item, actualResult[1].Item);
            Assert.Equal(expectedResult[1].User, actualResult[1].User);
            Assert.Equal(expectedResult[1].Content, actualResult[1].Content);
            Assert.Equal(expectedResult[1].Rating, actualResult[1].Rating);
            Assert.Equal(expectedResult[1].Date, actualResult[1].Date);
        }