public void Should_ReturnJsonResult() { //arrange MockMovieService.Setup(s => s.TopMoviesAsync(It.IsAny <byte>())).Returns(Task.FromResult(new List <dto.Movie> { new dto.Movie() })); //act var asyncResult = GetController().Get(); //assert var result = asyncResult.Result; Assert.IsInstanceOf <JsonResult>(result); }
public void WhenCalling_SaveRating_WithInvalidMovieRating_ExceptException(int movieId, bool movieExists, int userId, bool userExists) { //arrange var movieRating = new MovieRating { MovieId = movieId, UserId = userId, Rating = 1 }; MockMovieService.Setup(s => s.MovieExistsAsync(movieId)).Returns(Task.FromResult(movieExists)); MockUserService.Setup(s => s.UserExistsAsync(userId)).Returns(Task.FromResult(userExists)); //act/assert Assert.That(() => GetService().SaveRatingAsync(movieRating), Throws.ArgumentException); }
public void Should_ReturnJson() { //arrange MockMovieService.Setup(s => s.ValidateSearchCriteria(It.IsAny <MovieSearchCriteria>())).Returns(MovieSearchValidationResults.OK); MockMovieService.Setup(s => s.SearchMoviesAsync(It.IsAny <MovieSearchCriteria>())).Returns(Task.FromResult(new List <dto.Movie> { new dto.Movie() })); //act var jsonAsyncResult = GetController().Get(new MovieSearchCriteria()); //assert var jsonResult = jsonAsyncResult.Result; Assert.IsInstanceOf <JsonResult>(jsonResult); }
public void WhenCalling_ValidateMovieRating_WithInvalidMovieRating_ExpectResultReturned(int movieId, bool movieExists, int userId, bool userExists, MovieRatingSaveValidationResults expectedResult) { //arrange var movieRating = new MovieRating { MovieId = movieId, UserId = userId, Rating = 1 }; MockUserService.Setup(s => s.UserExistsAsync(userId)).Returns(Task.FromResult(userExists)); MockMovieService.Setup(s => s.MovieExistsAsync(movieId)).Returns(Task.FromResult(movieExists)); //act var result = GetService().ValidateMovieRatingAsync(movieRating); //assert Assert.AreEqual(expectedResult, result.Result); }
public void WhenCalling_SaveRating_WithValidMovieRating_RepositoryMethodCalled(int movieId, int userId, byte rating) { //arrange var movieRating = new MovieRating { MovieId = movieId, UserId = userId, Rating = rating }; MockMovieService.Setup(s => s.MovieExistsAsync(movieId)).Returns(Task.FromResult(true)); MockUserService.Setup(s => s.UserExistsAsync(userId)).Returns(Task.FromResult(true)); //act var result = GetService().SaveRatingAsync(movieRating); //assert MockRatingRepository.Verify(s => s.SaveRatingAsync(It.Is <MovieRating>(p => p.MovieId == movieId && p.UserId == userId && p.Rating == rating)), Times.Once); }
public void Should_ReturnNotFound_IfMoviesAreNullOrEmpty(bool isNull) { //arrange if (isNull) { MockMovieService.Setup(s => s.TopMoviesAsync(It.IsAny <byte>())).Returns(Task.FromResult(null as List <dto.Movie>)); } else { MockMovieService.Setup(s => s.TopMoviesAsync(It.IsAny <byte>())).Returns(Task.FromResult(new List <dto.Movie>())); } //act var asyncResult = GetController().Get(); //assert var result = asyncResult.Result; Assert.IsInstanceOf <NotFoundResult>(result); }
public void Should_ReturnOKStatus_WhenMovieIsSaved(bool isSaved) { //arrange MockMovieService.Setup(s => s.SaveMovieAsync(It.IsAny <dto.Movie>())).Returns(Task.FromResult(isSaved)); //act var asyncResult = GetController().Post(new dto.Movie()); //assert var result = asyncResult.Result; if (isSaved) { Assert.IsInstanceOf <OkResult>(result); } else { Assert.IsInstanceOf <BadRequestObjectResult>(result); } }
public void Should_ReturnNotFoundWhen_ResultIsNullOrEmpty(bool isNull) { //arrange MockMovieService.Setup(s => s.ValidateSearchCriteria(It.IsAny <MovieSearchCriteria>())).Returns(MovieSearchValidationResults.OK); if (isNull) { MockMovieService.Setup(s => s.SearchMoviesAsync(It.IsAny <MovieSearchCriteria>())).Returns(Task.FromResult(null as List <dto.Movie>)); } else { MockMovieService.Setup(s => s.SearchMoviesAsync(It.IsAny <MovieSearchCriteria>())).Returns(Task.FromResult(new List <dto.Movie>())); } //act var asyncResult = GetController().Get(new MovieSearchCriteria()); //assert var result = asyncResult.Result; Assert.IsInstanceOf <NotFoundResult>(result); }
public void Should_ReturnExpectedResponseWhen_Invalid(MovieSearchValidationResults validationResult) { //arrange MockMovieService.Setup(s => s.ValidateSearchCriteria(It.IsAny <MovieSearchCriteria>())).Returns(validationResult); //act var asycResult = GetController().Get(new MovieSearchCriteria()); //assert var result = asycResult.Result; switch (validationResult) { case MovieSearchValidationResults.InvalidCriteria: case MovieSearchValidationResults.NoCriteria: Assert.IsInstanceOf <BadRequestObjectResult>(result); var badRequest = result as BadRequestObjectResult; Assert.AreEqual(validationResult.ToString(), badRequest.Value); break; } }