Beispiel #1
0
        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);
            });
        }
Beispiel #2
0
        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)))));
        }