Пример #1
0
        public async Task CallMovieServiceOnce_OnGet()
        {
            // Arrange
            var movieServiceMock = new Mock <IMovieService>();
            var genreServiceMock = new Mock <IGenreService>();

            string movieName = "Spiderman";
            int    rating    = 10;

            var rateModel = new RateMovieViewModel()
            {
                Name   = movieName,
                Rating = rating
            };

            movieServiceMock
            .Setup(g => g.RateMovieAsync(movieName, rating))
            .ReturnsAsync(new MovieViewModel());

            var sut = new MovieController(movieServiceMock.Object, genreServiceMock.Object);

            // Act
            await sut.Rate(rateModel);

            // Assert
            movieServiceMock.Verify(m => m.RateMovieAsync(movieName, rating), Times.Once);
        }
Пример #2
0
        public async Task ReturnCorrectViewModel_OnGet()
        {
            // Arrange
            var movieServiceMock = new Mock <IMovieService>();
            var genreServiceMock = new Mock <IGenreService>();

            string movieName = "Spiderman";
            int    rating    = 10;

            var rateModel = new RateMovieViewModel()
            {
                Name   = movieName,
                Rating = rating
            };

            movieServiceMock
            .Setup(g => g.RateMovieAsync(movieName, rating))
            .ReturnsAsync(new MovieViewModel());

            var sut = new MovieController(movieServiceMock.Object, genreServiceMock.Object);

            // Act
            var result = await sut.Rate(rateModel) as JsonResult;

            // Assert
            Assert.IsInstanceOfType(result.Value, typeof(MovieViewModel));
        }
        public async Task <IActionResult> Rate([FromBody] RateMovieViewModel rateMovieModel)
        {
            var movie = await this.movieService.RateMovieAsync(rateMovieModel.Name, rateMovieModel.Rating);

            return(this.Json(movie));
        }