public async Task ReturnClassificationNullWhenNoRoundFound() { var movies = new List <Movie> { new Movie("t1", "Filme 1", 2018, 8.2M), new Movie("t2", "Filme 2", 2018, 7.9M) }; _movieRepository .GetAll() .Returns(movies); _createClassificationService .CreateClassification(Arg.Any <List <Movie> >()) .ReturnsNull(); var response = await _createChampionshipService.CreateChampionship(new List <MovieModel>()).ConfigureAwait(false); Assert.Multiple(() => { Assert.IsNotNull(response); Assert.IsNull(response.Classification); }); }
public async Task <ChampionshipModel> CreateChampionship(List <MovieModel> moviesModel) { if (moviesModel == null) { return(default(ChampionshipModel)); } var idsChampionshipMovies = moviesModel.Select(m => m.Id).ToArray(); var movies = await _movieRepository.GetAll().ConfigureAwait(false); movies = movies? .Where(m => idsChampionshipMovies.Contains(m.Id)) .Select(m => new Movie(m.Id, m.Title, m.Year, m.Rate)); return(movies == null ? null : new ChampionshipModel( _createClassificationService .CreateClassification(movies.ToList())?.Select( m => new ChampionshipPositionModel(m.Position, new MovieModel(m.Movie.Id, m.Movie.Title, m.Movie.Year))))); }