Beispiel #1
0
        public async Task <IActionResult> CreateGenre(CreateGenreInputModel input)
        {
            if (!this.ModelState.IsValid)
            {
                return(this.View());
            }

            await this.genresService.CreateGenreAsync(input);

            return(this.Redirect("/"));
        }
 public async Task <ActionResult <CreateGenreResourceModel> > Create(CreateGenreInputModel inputModel)
 {
     try
     {
         return(this.Created(await this.genresService.CreateGenre <CreateGenreResourceModel>(inputModel.Name)));
     }
     catch (Exception ex)
     {
         this.loggerService.LogException(ex);
         return(this.BadRequest());
     }
 }
Beispiel #3
0
        public async Task <IActionResult> Create(CreateGenreInputModel input)
        {
            if (!ModelState.IsValid)
            {
                return(View(input));
            }

            if (!await genreService.CreateGenreAsync(input))
            {
                return(View(input));
            }

            return(Redirect(GlobalConstants.redirectHome));
        }
        public async Task CreateGenreAsyncShouldAddGenreToDbIfInputIsValid()
        {
            var input = new CreateGenreInputModel
            {
                Name = "genre1"
            };

            var genreService = new GenreService(dbContext, mapper);

            var actualResult = await genreService.CreateGenreAsync(input);

            Assert.True(actualResult);
            Assert.True(dbContext.Genres.Count() == 1);
            Assert.True(dbContext.Genres.First().Name == "genre1");
        }
        public async Task <bool> CreateGenreAsync(CreateGenreInputModel input)
        {
            if (await dbContext.Genres.AnyAsync(genre => genre.Name == input.Name))
            {
                return(false);
            }
            ;

            var genreForDb = mapper.Map <CreateGenreInputModel, Genre>(input);

            await dbContext.Genres.AddAsync(genreForDb);

            await dbContext.SaveChangesAsync();

            return(true);
        }
Beispiel #6
0
        public async Task CreateGenreAsync(CreateGenreInputModel input)
        {
            if (this.genresRepository.GenreExist(input.Name))
            {
                throw new ArgumentException("Genre already exists!");
            }

            var genreToAdd = new Genre
            {
                Name = input.Name,
            };

            await this.genresRepository.AddAsync(genreToAdd);

            await this.genresRepository.SaveChangesAsync();
        }
        public async Task CreateGenreAsyncShouldReturnFalseIfGenreWithSameNameExists()
        {
            await dbContext.Genres.AddAsync(new Genre { Name = "genre1" });

            await dbContext.SaveChangesAsync();

            var input = new CreateGenreInputModel
            {
                Name = "genre1"
            };

            var genreService = new GenreService(dbContext, mapper);

            var actualResult = await genreService.CreateGenreAsync(input);

            Assert.False(actualResult);
            Assert.True(dbContext.Genres.Count() == 1);
        }