public async Task GetMovieDetail_MockServer_CorrectData() { var httpMessageHandler = _movieHelperService.GetMockHttpMessageHandler(TestAppData.CinemaMovieDetailFilePath, HttpStatusCode.OK).Object; var apiHelper = _movieHelperService.GetMockApiHelperService(httpMessageHandler, _baseUrlCinema).Object; var moviesReadFromFile = JsonConvert.DeserializeObject <MovieDetail>(File.ReadAllText(TestAppData.CinemaMovieDetailFilePath)); var externalService = new ExternalMovieService(_apiUtilityService.Object, apiHelper); var result = await externalService.GetMovieDetailAsync(_baseUrlCinema, _getMovieDetailCinema, _movieId); Assert.AreEqual(moviesReadFromFile.ID, result.ID); Assert.AreEqual(moviesReadFromFile.Actors, result.Actors); Assert.AreEqual(moviesReadFromFile.Awards, result.Awards); Assert.AreEqual(moviesReadFromFile.Country, result.Country); Assert.AreEqual(moviesReadFromFile.Director, result.Director); Assert.AreEqual(moviesReadFromFile.Genre, result.Genre); Assert.AreEqual(moviesReadFromFile.Language, result.Language); Assert.AreEqual(moviesReadFromFile.Metascore, result.Metascore); Assert.AreEqual(moviesReadFromFile.Plot, result.Plot); Assert.AreEqual(moviesReadFromFile.Poster, result.Poster); Assert.AreEqual(moviesReadFromFile.Price, result.Price); Assert.AreEqual(moviesReadFromFile.Votes, result.Votes); Assert.AreEqual(moviesReadFromFile.Rating, result.Rating); Assert.AreEqual(moviesReadFromFile.Type, result.Type); Assert.AreEqual(moviesReadFromFile.Writer, result.Writer); Assert.AreEqual(moviesReadFromFile.Rating, result.Rating); Assert.AreEqual(moviesReadFromFile.Title, result.Title); Assert.AreEqual(moviesReadFromFile.Rated, result.Rated); Assert.AreEqual(moviesReadFromFile.Released, result.Released); Assert.AreEqual(moviesReadFromFile.Runtime, result.Runtime); }
public async Task GetAllMovies_MockServer_HandleErrorStatus() { var httpMessageHandler = _movieHelperService.GetMockHttpMessageHandler(TestAppData.CinemaWorldAllMoviesFilePath, HttpStatusCode.BadRequest).Object; var apiHelper = _movieHelperService.GetMockApiHelperService(httpMessageHandler, _baseUrlCinema).Object; var externalService = new ExternalMovieService(_apiUtilityService.Object, apiHelper); var result = await externalService.GetAllMoviesAsync(_baseUrlCinema, _getMovieCinema); Assert.IsNull(result); }
public async Task GetAllMovies_MockServer_CorrectCount() { var httpMessageHandler = _movieHelperService.GetMockHttpMessageHandler(TestAppData.CinemaWorldAllMoviesFilePath, HttpStatusCode.OK).Object; var apiHelper = _movieHelperService.GetMockApiHelperService(httpMessageHandler, _baseUrlCinema).Object; var externalService = new ExternalMovieService(_apiUtilityService.Object, apiHelper); var result = await externalService.GetAllMoviesAsync(_baseUrlCinema, _getMovieCinema); Assert.AreEqual(7, result.MovieCollection.Count); }
public async Task GetMovieDetail_MockServer_ExceptionHandle() { var httpMessageHandler = _movieHelperService.GetMockHttpMessageHandler(new HttpRequestException()).Object; var apiHelper = _movieHelperService.GetMockApiHelperService(httpMessageHandler, _baseUrlCinema).Object; var externalService = new ExternalMovieService(_apiUtilityService.Object, apiHelper); var result = await externalService.GetMovieDetailAsync(_baseUrlCinema, _getMovieDetailCinema, _movieId); Assert.IsNull(result); }
public async Task GetMovieDetail_MockServer_NotNull() { var httpMessageHandler = _movieHelperService.GetMockHttpMessageHandler(TestAppData.CinemaMovieDetailFilePath, HttpStatusCode.OK).Object; var apiHelper = _movieHelperService.GetMockApiHelperService(httpMessageHandler, _baseUrlCinema).Object; var externalService = new ExternalMovieService(_apiUtilityService.Object, apiHelper); var result = await externalService.GetMovieDetailAsync(_baseUrlCinema, _getMovieDetailCinema, _movieId); Assert.IsNotNull(result); }
public async Task GetAllMovies_MockServer_CorrectData() { var httpMessageHandler = _movieHelperService.GetMockHttpMessageHandler(TestAppData.CinemaWorldAllMoviesFilePath, HttpStatusCode.OK).Object; var apiHelper = _movieHelperService.GetMockApiHelperService(httpMessageHandler, _baseUrlCinema).Object; var moviesReadFromFile = _movieHelperService.ReadAllMoviesFromFile(Providers.CinemaWorld); var moviesFromExternalSystem = new ExternalMovieService(_apiUtilityService.Object, apiHelper); var moviesFromApiCall = await moviesFromExternalSystem.GetAllMoviesAsync(_baseUrlCinema, _getMovieCinema); foreach (var movie in moviesReadFromFile.MovieCollection) { foreach (var resultMove in moviesFromApiCall.MovieCollection.Where(resultMove => movie.ID == resultMove.ID)) { Assert.AreEqual(movie.Poster, resultMove.Poster); Assert.AreEqual(movie.Title, resultMove.Title); Assert.AreEqual(movie.Type, resultMove.Type); Assert.AreEqual(movie.Year, resultMove.Year); } } }