Пример #1
0
        public async Task <IActionResult> Create(CreatePersonViewModel viewModel)
        {
            if (ModelState.IsValid)
            {
                var person = this._mapper.Map <CreatePersonViewModel, Person>(viewModel);
                _context.Add(person);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(viewModel));
        }
Пример #2
0
        public async Task GetByIdExistingShouldReturnNotNullObject()
        {
            var options = new DbContextOptionsBuilder <NetPhlixDbContext>()
                          .UseInMemoryDatabase("Test")
                          .Options;
            var dbContext = new NetPhlixDbContext(options);
            await dbContext.Movies.AddAsync(
                new Movie()
            {
                Id = "first"
            }
                );

            await dbContext.SaveChangesAsync();

            var mappingConfig = new MapperConfiguration(
                mc =>
            {
                mc.AddProfiles(
                    typeof(MoviesProfile),
                    typeof(UsersProfile),
                    typeof(CompaniesProfile),
                    typeof(ReviewsProfile),
                    typeof(PeopleProfile),
                    typeof(EventsProfile),
                    typeof(AdminProfile)
                    );
            });
            IMapper mapper = mappingConfig.CreateMapper();

            var service = new MoviesService(mapper, dbContext);
            var movie   = await service.GetById("first");

            Assert.NotNull(movie);
        }
Пример #3
0
        public async Task GetAllCountShouldReturnCorrectNumberOfMovies()
        {
            var options = new DbContextOptionsBuilder <NetPhlixDbContext>()
                          .UseInMemoryDatabase("Test")
                          .Options;
            var dbContext = new NetPhlixDbContext(options);

            await dbContext.Movies.AddRangeAsync(
                new Movie(),
                new Movie(),
                new Movie()
                );

            await dbContext.SaveChangesAsync();

            var mappingConfig = new MapperConfiguration(
                mc =>
            {
                mc.AddProfiles(
                    typeof(MoviesProfile),
                    typeof(UsersProfile),
                    typeof(CompaniesProfile),
                    typeof(ReviewsProfile),
                    typeof(PeopleProfile),
                    typeof(EventsProfile),
                    typeof(AdminProfile)
                    );
            });
            IMapper mapper = mappingConfig.CreateMapper();

            var service   = new MoviesService(mapper, dbContext);
            var allMovies = await service.GetAll();

            Assert.Equal(3, allMovies.Count());
        }
Пример #4
0
        public async Task <IActionResult> Create(CreateMovieViewModel viewModel)
        {
            if (ModelState.IsValid)
            {
                var trailer = viewModel.Trailer.UrlToEmbedCode();
                if (trailer == null)
                {
                    return(View(viewModel));
                }
                var movie = this._mapper.Map <CreateMovieViewModel, Movie>(viewModel);
                movie.Trailer = trailer;
                _dbContext.Add(movie);
                await _dbContext.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(viewModel));
        }
Пример #5
0
        public async Task <IActionResult> Create(CreateGenreViewModel viewModel)
        {
            if (ModelState.IsValid)
            {
                if (await _context.Genres.FirstOrDefaultAsync(x => x.Name == viewModel.Name) != null)
                {
                    this.ModelState.AddModelError(string.Empty, $"Genre with name '{viewModel.Name}' already exists");
                    return(View(viewModel));
                }

                var genre = this._mapper.Map <CreateGenreViewModel, Genre>(viewModel);

                _context.Add(genre);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(viewModel));
        }