Example #1
0
        public async Task <ResultViewModel> Post(LoanedGameCreateViewModel loanedGame)
        {
            var entity = _mapper.Map <LoanedGame>(loanedGame);

            entity.Game = await _repositoryGame.GetByIdAsync(entity.IdGame);

            var result = new ResultViewModel
            {
                Success = false,
                Message = "Não foi possível criar o empréstimo."
            };

            if (!entity.IsValid())
            {
                result.Message += " Jogo indisponivel";
            }
            else
            {
                var insert = await _repository.InsertAsync(entity);

                entity.Game.Available = false;
                await _repositoryGame.UpdateAsync(entity.Game);

                result.Success = true;
                result.Message = "empréstimo de jogo criado.";
                result.Data    = _mapper.Map <LoanedGameViewModel>(insert);
            }

            return(result);
        }
        public async Task <ActionResult> Post([FromBody] LoanedGameCreateViewModel model)
        {
            if (model.Invalid)
            {
                return(BadRequest(new ResultViewModel
                {
                    Success = false,
                    Message = "Não foi possível cadastrar o empréstimo do jogo",
                    Data = model.Notifications
                }));
            }

            var result = await _service.Post(model);

            return(Ok(result));
        }
Example #3
0
        public void ShouldReturnErrorWhenIdUserIsInvalid()
        {
            var loanedGame = new LoanedGameCreateViewModel(0, 1);

            Assert.IsTrue(loanedGame.Invalid);
        }
Example #4
0
        public void ShouldReturnErrorWhenLoanedGameCreateViewModelIsValid()
        {
            var loanedGame = new LoanedGameCreateViewModel(1, 1);

            Assert.IsTrue(loanedGame.Valid);
        }